Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.011 c
14-65587
esu
2003-10-02 11:55
2003.10.20
Собираю команду набраться


1-65423
asterisk
2003-10-07 19:41
2003.10.20
DLL для 1С


11-65399
mike.dld
2003-02-06 11:23
2003.10.20
Проблемы


3-65349
Элина
2003-09-29 16:07
2003.10.20
Веселый глюк! (долбанный парадокс)


1-65520
Relaxxx
2003-10-08 12:55
2003.10.20
Количество часов между часами(извиняюсь за тафтологию)




   Наверх