title image


Smiley Re: comdlg.dll: GetSaveFileName, was mache ich falsch?
Der Fehler liegt bei der Größenangebe des Typs!



Da im Type OPENFILENAME die Strings mit variabler Länge defineirt sind,

muß man den ersten Parameter der Typs als letztes setzen!



In lStructSize muß die tatsächliche Größe des Typs stehen.

Da die Strings unterschiedlich lang sind, kann diese tatsächliche Größe

erst nach dem Setzen der Strings ermittelt werden. Und den Type

natürlich vollständig füllen.







With OFName

.hwndOwner = Me.hwnd

.hInstance = vbNullLong

.lpstrFilter = "Text-Dateien (*.txt)" + Chr$(0) + "*.txt" + Chr$(0)

.lpstrCustomFilter = vbNullString

.nMaxCustFilter = vbNullLong

.nFilterIndex = 1

.lpstrFile = "Kommentar-Datei.txt"

.nMaxFile = 255

.lpstrFileTitle = Space$(254)

.nMaxFileTitle = 255

.lpstrInitialDir = AktVerz

.lpstrTitle = "Kommentare-Datei speichern"

.flags = 4

.nFileOffset = 0

.nFileExtension = 0

.lpstrDefExt = "txt" + Chr$(0)

.lCustData = vbNullLong

.lpfnHook = vbNullLong

.lpTemplateName = vbNullString

'// und am Schluß die Größe ermitteln

.lStructSize = Len(OFName)

End With


Gruß
Gaga

___________________________________________________________________

Profilösungen für VB6
wenn nicht anders angegeben, sind alle Codebeispiele nicht getestet, nur getippt


geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: