Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Как выбрать удаленный компьютер в диалоге   Найти похожие ветки 

 
AlexS76   (2004-03-11 09:53) [0]

Господа! Надо в диалоге выбрать компьютер в сети и UNC имя получить как String.
SHBrowseForFolder - позволяет выбирать но строку выдает пустую, хотя если выбрать в диалоге директорию на удаленном компьютере все нормально работает.(естественно с флагом BIF_RETURNONLYFSDIRS).


 
clickmaker ©   (2004-03-11 12:06) [1]

BIF_BROWSEFORCOMPUTER


 
AlexS76   (2004-03-11 14:30) [2]

Я Все понимаю - меня считают за придурка не умеющего читать хелпы. Но повторяю с флагом BIF_BROWSEFORCOMPUTER
при выборе удаленного компьютера SHGetPathFromIDList возвращает пустую строку. Я подозреваю что нужно пользоваться другой функцией но этот код работает только для директорий
var
TitleName : string;
Pidl,lpItemID : PItemIDList;
BrowseInfo : TBrowseInfo;
DisplayName : array[0..MAX_PATH] of char;
s:pchar;
begin
FillChar(BrowseInfo, sizeof(TBrowseInfo), #0);
BrowseInfo.hwndOwner := Form1.Handle;
BrowseInfo.pszDisplayName := @DisplayName;
TitleName := "???????? ???????";
SHGetSpecialFolderLocation(Form1.Handle, CSIDL_NETWORK, PIDL);
BrowseInfo.lpszTitle := PChar(TitleName);
s := StrAlloc(1024);
BrowseInfo.pidlRoot:=Pidl;
If Brws=0 then
       BrowseInfo.ulFlags := BIF_RETURNONLYFSDIRS

else
       BrowseInfo.ulFlags := BIF_BROWSEFORCOMPUTER;
LpItemID:= SHBrowseForFolder(BrowseInfo);
if lpItemId <> nil then
  If Brws=0 then begin
       SHGetPathFromIDList(lpItemID, s);
       result:=s;
       GlobalFreePtr(lpItemID);
       GlobalFreePtr(Pidl);
  end;
end;


 
Игорь Шевченко ©   (2004-03-11 14:54) [3]


> при выборе удаленного компьютера SHGetPathFromIDList возвращает
> пустую строку


А к DisplayName приделать \\ спереди не поможет ?


 
Игорь Шевченко ©   (2004-03-11 14:56) [4]

BOOL SHGetPathFromIDList(          LPCITEMIDLIST pidl,
   LPTSTR pszPath
);

pidl -
Address of an item identifier list that specifies a file or directory location relative to the root of the namespace (the desktop).

Вроде, про компьютеры ничего не написано...



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

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
14-1081491476
Igorek
2004-04-09 10:17
2004.05.02
Наша ОС с нуля


1-1081957227
kEY//
2004-04-14 19:40
2004.05.02
HotKeys


1-1081949171
Flashas
2004-04-14 17:26
2004.05.02
dbgrid i Enter..


14-1081845365
Шишкин Илья
2004-04-13 12:36
2004.05.02
PHP


4-1078402242
kentavr
2004-03-04 15:10
2004.05.02
TRAY