Вниз
Скачать: CL | DM;

SHBrowseForFolder и SHGetPathFromIDList   Найти похожие ветки 

 
Nebuchadnezzar ©   (2002-08-27 18:04) [0]

Всем привет!!!
Помогите разобраться...
Задача в следующем: используя SHBrowseForFolder открыть диалог и выбрать компьютер в локальной сети, получить его имя. Проблема в том что функция SHGetPathFromIDList возвращает False если в SHBrowseForFolder использовался флаг BIF_BROWSEFORCOMPUTER.
вот кусок кода:
procedure TfrmMain.actBrowseForServerExecute(Sender: TObject);
var vReturnInfo : PItemIDList;
vBrowseInfo : TBrowseInfo;
vTempPath : array [0..MAX_PATH] of Char;
begin
FillChar(vBrowseInfo, SizeOf(TBrowseInfo), #0);
vBrowseInfo.hwndOwner := Application.Handle;
vBrowseInfo.lpszTitle := "Select Server Name...";
vBrowseInfo.ulFlags := BIF_BROWSEFORCOMPUTER;
vReturnInfo := SHBrowseForFolder(vBrowseInfo);
if vReturnInfo = nil then Exit;
try
if not SHGetPathFromIDList(vReturnInfo, vTempPath) then raise Exception.Create("SHGetPathFromIDList fails...");
finally
GlobalFreePtr(vReturnInfo);
end;
end;


 
Ученик ©   (2002-08-27 18:11) [1]

http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988622138&n=15


 
Nebuchadnezzar ©   (2002-08-27 18:36) [2]

С этим примером ( http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988622138&n=15) все понятно, он работает нормально, но дело в том что там используется флаг BIF_RETURNONLYFSDIRS а мне не нужно выбирать папку, нужно выбрать только имя компьютера (флаг BIF_BROWSEFORCOMPUTER)


 
Nebuchadnezzar ©   (2002-08-27 18:47) [3]

Все, проблема решена, SHGetPathFromIDList вообще не надо использовать...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
3-31622
KIR
2002-09-19 10:23
2002.10.10
Вопрос по FastReport -> MasterHeader


1-31763
StarCon
2002-10-01 14:31
2002.10.10
логика разбора таблиц


14-32006
qwerty123x
2002-09-16 12:38
2002.10.10
Сколько стоит заказать сантехника? (я имею в виду услуги киллера)


14-31968
RV
2002-09-16 10:53
2002.10.10
Чем смотреть файлы *.odf


1-31769
amor121
2002-10-01 16:20
2002.10.10
Форма разрабатывалась при разрешении 1024х768, а в 800х600




   Наверх