Вниз
Скачать: 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.009 c
7-65650
mm0
2003-08-04 17:52
2003.10.20
Как запустить Хранитель экрана(Экранную заставку)


3-65371
igor_m
2003-09-25 16:47
2003.10.20
Ошибка при использовании ADOTable


14-65599
Knight
2003-09-29 23:06
2003.10.20
Что не говорите, а в рекламе часто правду говорят...


3-65337
Andy
2003-09-30 08:01
2003.10.20
Как написать запрос


3-65390
Julia
2003-09-27 15:11
2003.10.20
автоподстановка




   Наверх