GetOpenFileName
-
Hi, danke
Das ganze sieht jetzt so aus:
OPENFILENAME ofn; // common dialog box structure
char szFile[260]; // buffer for file name// Initialize OPENFILENAME
szFile[0] = '\0';
ZeroMemory(&ofn, sizeof(OPENFILENAME));
ofn.lStructSize = sizeof(OPENFILENAME);
ofn.hwndOwner = hWnd; // Das Hauptfenster
ofn.lpstrFile = szFile;
ofn.nMaxFile = sizeof(szFile);
ofn.lpstrFilter = TEXT("All\0*.\0Text\0.TXT\0");
ofn.lpstrCustomFilter = 0;
ofn.nMaxCustFilter = 0;
ofn.nFileOffset = 0;
ofn.nFileExtension = 0;
ofn.lpfnHook = NULL;
ofn.lpTemplateName = NULL;
ofn.nFilterIndex = 1;
ofn.lpstrFileTitle = 0;
ofn.nMaxFileTitle = 0;
ofn.lpstrInitialDir = NULL;
ofn.lpstrTitle = NULL;
ofn.Flags = 0;
ofn.hInstance = 0;Geht aber trotzdem nicht!
Thomas
-
*lol* Wenn du hInstance auch auf NULL setzt, dann KANN es ja auch nicht funktionieren. Achte mal auf den ersten Parameter der WinMain.
-
Ok, danke.
Hatte das aus nem Beispiel übernommen
jetzt:
ofn.hInstance = hInstance;Geht aber immer noch nicht!
-
TEXT("All\0*.*\0\0Text\0*.TXT\0\0");
-
Hi, danke für die Geduld.
Habs geändert, aber es geht immer noch nicht.
Es kommt immernoch CDERR_STRUCTSIZE.Könnte es sein, dass es gar nicht an sowas liegt?
Die ersten Zeilen vom Programm:#include <windows.h>
#include <commdlg.h>
#include <CDERR.h>
#include <string>
#pragma comment(lib,"comdlg32.lib")using namespace std;
? Fehlt hier vielleicht was?
-
-
Die HINSTANCE brauchst Du nur, wenn Du bei den Flags OFN_ENABLETEMPLATE mit angibst.
-
Du brauchst auch nicht, wie von WebFritzi vorgeschlagen, den Filter-String mit drei Nullern abzuschließen. Zwei reichen völlig aus, das hattest Du schon richtig.
-
Wenn Du CDERR_STRUCTSIZE als Fehler bekommst, sollte dies das Problem lösen:
ofn.lStructSize = OPENFILENAME_SIZE_VERSION_400
-
-
Danke King!!!
WebFritzi ist eh ein Dummkopf!"
-
Hi,
ich weiß zwar nicht, wer sich da für mich ausgegeben hat, aber auf jeden Fall war der letzte Eintrag nicht von mir!!!!!!!!
@King: Danke, jetzt funktionierts!
Thomas
-
Hab was dazu bei msdn gefunden.
Und es wundert mich schon ein bisschen. Ich nämlich kein NT 4.0, sondern Win98SE..
-
[EDIT] War Blödsinn [/EDIT]
[ Dieser Beitrag wurde am 22.02.2003 um 20:09 Uhr von WebFritzi editiert. ]
-
Wenn es nach Blödsinn ging, schreib am besten garkeinen Beitrag mehr.
-
Hehe, du kleiner Idiot! Um dich zu ärgern schreib ich gleich gaaanz viel!