Witam, chcialbym otworzyc sobie standardowe windowsowe okienko do otwierania plikow. Do tego sluzy funkcja GetOpenDialog w ktorej trzeba podac
strukture OPENFILENAME ktora przedstawia sie tak:
typedef struct tagOFN { // ofn
DWORD lStructSize;
HWND hwndOwner;
HINSTANCE hInstance;
LPCTSTR lpstrFilter;
LPTSTR lpstrCustomFilter;
DWORD nMaxCustFilter;
DWORD nFilterIndex;
LPTSTR lpstrFile;
DWORD nMaxFile;
LPTSTR lpstrFileTitle;
DWORD nMaxFileTitle;
LPCTSTR lpstrInitialDir;
LPCTSTR lpstrTitle;
DWORD Flags;
WORD nFileOffset;
WORD nFileExtension;
LPCTSTR lpstrDefExt;
DWORD lCustData;
LPOFNHOOKPROC lpfnHook;
LPCTSTR lpTemplateName;
} OPENFILENAME;
No i niestety mimo ze przekazuje do tej funkcji swoja strukture to okno sie nie pokazuje. SPrawdzilem za pomoca funkcji CommDlgExtendedError
gdzie tkwi problem i okazalo sie ze podaje zly rozmiar lStructSize. I akurat to by sie zgadzalo bo ja nie mam pojecia jakirozmiar struktury podac?
W ogole o jaka tu strukture chodzi? w Win32.hlp mam tylko tyle.
lStructSize
Specifies the length, in bytes, of the structure.
Ale jakiej struktury? Czy ja mam zliczyc ile zajmuja w pamieci wszystkie inne uzyte parametry tej struktury i to tam podac?
Pogubilem sie w tym..
Moze ktos mi cos podpowie?
Z gory dziekuje za poswiecony czas,
Wodzu