| imho.ws |
![]() |
|
|
|
# 1 |
|
Guest
Сообщения: n/a
|
Глюки с GetOpenFileName
Необходимо вызвать стандартноый диалог открытия файла. Всё, что нужно для этого, как я понял, это: функция GetOpenFileName(LPOPENFILENAME) и структура OPENFILENAME. Вроде бы всё просто. Вот этод код я выдрал из хелпа "Win32 Programmer's Reference":
Код:
// Initialize OPENFILENAME
ZeroMemory(&ofn, sizeof(OPENFILENAME));
ofn.lStructSize = sizeof(OPENFILENAME);
ofn.hwndOwner = hwnd;
ofn.lpstrFile = szFile;
ofn.nMaxFile = sizeof(szFile);
ofn.lpstrFilter = "All\0*.*\0Text\0*.TXT\0";
ofn.nFilterIndex = 1;
ofn.lpstrFileTitle = NULL;
ofn.nMaxFileTitle = 0;
ofn.lpstrInitialDir = NULL;
ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;
// Display the Open dialog box.
if (GetOpenFileName(&ofn)==TRUE)
hf = CreateFile(ofn.lpstrFile, GENERIC_READ,
0, (LPSECURITY_ATTRIBUTES) NULL,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,
(HANDLE) NULL);
|
|
|
# 2 |
|
Junior Member
Регистрация: 25.09.2004
Адрес: ніжин
Сообщения: 128
![]() ![]() |
В хелпе врядли могут быть неработающие куски программ, которые, к тому же, миллионы раз были проверены людьми вырезвашими оттуда кусочки. Можно порекомендовать - зайти/выйти, перекомпилировать весь проект полностью, удалить временные и подозрительные файлы ручками, проверить нет ли неправильных (lf only) окончаний строк (в этом случае, если смешаны lf & lf+cr окончания, редактор вижуал студии может неправильно определять где какая строка находится)...
|
|
|
|
|
# 3 |
|
Guest
Сообщения: n/a
|
Да, через полчасика исследований я просёк фишку. В тексте winhelp используется очень интересный формат. Кусок кода я бессовестно скопировал, вот мой вижуал и нахватался всяких неуклюжих символов конца строки. Всё равно, спасибо, что не оставил без внимания.
тема закрыта |