Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

OpenDialog на WinAPI (не работает MULTISELECT)


KocTeT ©   (2003-06-28 17:41:00) 

Не знаю в чём ошибка, может если кто знает, то поможет:

function GetOpenFileNameA(var OpenFile: TOpenFileName): Bool; stdcall; external "comdlg32.dll" name "GetOpenFileNameA";

procedure SelectFile;
const
Filter = "Any File (*.*)"#0"*.*"#0#0;
Title = "Open Dialog...";
var
OpenFile : TOpenFileName;
begin
FillChar(OpenFile, SizeOf(TOpenFileName), 0);

with OpenFile do
begin
lStructSize := SizeOf(TOpenFileName);
hInstance := Inst;
hWndOwner := hWnd;
lpstrFilter := Filter;
nFilterIndex := 2;
nMaxFile := SizeOf(FileName);
lpstrFile := FileName;
lpstrTitle := Title;
Flags := OFN_LONGNAMES or OFN_ALLOWMULTISELECT or OFN_EXPLORER or OFN_FILEMUSTEXIST or OFN_PATHMUSTEXIST or OFN_HIDEREADONLY;

if GetOpenFileNameA(OpenFile) = true then
begin
messagebox(0,lpstrFile, "msg", 0);
end;
end;
end;


Запускается окно выбора файла, когда выбираешь один, то всё окей (в lpstrFile хранится имя файла), а когда несколько, то lpstrFile будет только каталог... Объясните что не так...


nikkie   (2003-06-28 18:28:00) [1]

читаем MSDN...
OFN_ALLOWMULTISELECT <...> For Explorer-style dialog boxes, the directory and file name strings are NULL separated, with an extra NULL character after the last file name. <...>


Наверх

Титульная страница Поиск, карта сайта Написать письмо