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

Вниз

Аналог TOpenDialog   Найти похожие ветки 

 
MakNik ©   (2003-09-24 15:24) [0]

Подскажите, пожалуйста, как вызывать стандартный диалог для выбора компъютера в сети (Аналог TOpenDialog)??? И есть ли возможность сделать такой диалог (или комбобокс), который выдавал бы список всех SQL серверов в сети???


 
Alex_Raider ©   (2003-09-24 15:50) [1]

Это функции Shell Api


 
MakNik ©   (2003-09-24 15:54) [2]

А примерчик можно???


 
Stas ©   (2003-09-24 15:55) [3]

в D6 есть компоненты...


 
me   (2003-09-24 21:50) [4]

uses
ShlObj, Variants, ActiveX;

function SelectDirectory(const Caption: string; out Computer: string) : Boolean;
var
WindowList : Pointer;
BrowseInfo : TBrowseInfo;
Buffer : PChar;
RootItemIDList,
ItemIDList : PItemIDList;
ShellMalloc : IMalloc;
IDesktopFolder : IShellFolder;
Eaten, Flags : LongWord;
begin
Result := False;
Computer := EmptyStr;
FillChar(BrowseInfo, SizeOf(BrowseInfo), 0);
if (ShGetMalloc(ShellMalloc) = S_OK) and (ShellMalloc <> nil) then
begin
Buffer := ShellMalloc.Alloc(MAX_PATH);
try
RootItemIDList := nil;
SHGetSpecialFolderLocation(0, CSIDL_NETWORK, RootItemIDList);
with BrowseInfo do
begin
hwndOwner := Application.Handle;
pidlRoot := RootItemIDList;
lpszTitle := PChar(Caption);
ulFlags := BIF_BROWSEFORCOMPUTER;
pszDisplayName := Buffer;
end;
WindowList := DisableTaskWindows(0);
try
ItemIDList := ShBrowseForFolder(BrowseInfo);
finally
EnableTaskWindows(WindowList);
end;
Result := ItemIDList <> nil;
if Result then
begin
ShellMalloc.Free(ItemIDList);
Computer := Buffer;
end;
finally
ShellMalloc.Free(Buffer);
end;
end;
end;


 
MakNik ©   (2003-09-29 10:14) [5]

А как этот код заставить работать под win 98???


 
me   (2003-09-29 12:54) [6]

Цитата из MSDN:
Windows 95/98/Me: SHBrowseForFolder is supported by the Microsoft Layer for Unicode. To use this, you must add certain files to your application, as outlined in Microsoft Layer for Unicode on Windows 95/98/Me Systems.
Похоже для программ, написанных на Delphi, это не просто сделать.


 
MsGuns ©   (2003-09-29 13:37) [7]

uses FileCtrl

SelectDirectory



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

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

Наверх




Память: 0.48 MB
Время: 0.02 c
14-65600
cyborg
2003-10-01 15:43
2003.10.20
Аналог Sleep, SleepEx


1-65450
Alexious
2003-10-06 09:41
2003.10.20
И опять Числа


14-65633
Guzz
2003-09-21 17:35
2003.10.20
Вопрос к админу


14-65627
mrddim
2003-09-30 22:55
2003.10.20
Большой Delphi FAQ


1-65504
qwe
2003-10-08 15:04
2003.10.20
Как в программе добавить пункт в главное меню