я сделал следующим образом
if(GetOpenFileName(&ofn))
return 1;
else
return 0; а спомощью твоего варианта просто сначала проверил значение этой функции и наконец получил 1.Возникает такой вопрос.В свойствах проекта включено юникод.И потому код
OPENFILENAME ofn;
char szFilters[80]="Двоичные файлы\0*.dat\0 Все файлы\0 *.*\0";
char szFileTitle[15];
FileName[0]='\0';
memset(&ofn,0,sizeof(OPENFILENAME));
ofn.lStructSize=sizeof(OPENFILENAME);
ofn.hwndOwner=hWnd;
ofn.lpstrFilter=szFilters;
ofn.nFilterIndex=1;
ofn.lpstrFile=FileName;
ofn.nMaxFile=(int)sizeof(FileName);
ofn.lpstrFileTitle=szFileTitle;
ofn.nMaxFileTitle=sizeof(szFileTitle);
if(GetOpenFileName(&ofn))
return 1;
else
return 0;
выдает у меня ошибку невозможно преобразовать 'char [80]' в 'LPCWSTR'
и также для других char/Но мне говорят ,что срабатывает у других несмотря на юникод.Чем это может быть вызвано у меня?