Уважаемые коллеги.
Подскажите как сделать так, чтобы в диалоге, вызываемом функцией SelectDirectory открывалась папка Сетевое окружение.
Спасибо.
Здравствуйте, Evgeny_Dr, Вы писали:
E_D>Подскажите как сделать так, чтобы в диалоге, вызываемом функцией SelectDirectory открывалась папка Сетевое окружение.
Если SelectDirectory не обязательна, то, например, [from ru.delphi FAQ]:
uses
ShlObj, activex;
function GetDirectory(nFolder: Longint): String;
var
Bi : TBrowseInfo;
lpName: array [0..MAX_PATH] of Char;
ppidl, aItemLst : PItemIDList;
begin
SHGetSpecialFolderLocation(Application.Handle, nFolder, ppidl);
FillChar(Bi, SizeOf(bi), 0);
Bi.hwndOwner := Application.Handle;
Bi.pidlRoot := ppidl;
Bi.pszDisplayName := lpName;
Bi.lpszTitle := 'Open directory';
aItemLst := SHBrowseForFolder(Bi);
CoTaskMemFree(ppidl);
SHGetPathFromIDList(aItemLst, lpName);
CoTaskMemFree(aItemLst);
Result := lpName;
end;
// Пример использования (иначе не поймут, что такое nFolder)
// значения nFolder можно найти в описании
// к SHGetSpecialFolderLocation
// из Win32 Programmer's Reference (win32.hlp)
procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := GetDirectory(CSIDL_NETWORK );
end;