Форум: "Сети";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];
ВнизNet Share Найти похожие ветки
← →
sirin (2004-09-16 18:02) [0]Для поиска шар в сети использую ф-цию NetShareEnum
Обьявление:function NetShareEnum(ServerName: LPWSTR;
Level: DWORD; BufPtr: Pointer; prefmaxlen: DWORD;
var entriesread, totalentries, resume_handle: DWORD): DWORD; stdcall;
external "Netapi32.dll" name "NetShareEnum";
Использование
var
Buf: pSHARE_INFO_0;
entriesread, totalentries, resume_handle: DWORD;
ServerName: PWideChar;
e: Dword;
I: integer;
begin
lbxShares.Clear;
entriesread := 0;
totalentries := 0;
resume_handle := 0;
GetMem(ServerName, 2*Length(edit1.Text) + 2);
StringToWideChar(edit1.Text, ServerName, Length(edit1.Text)*2 + 2);
e := NetShareEnum(ServerName, 0, @Buf, DWORD(-1), entriesread, totalentries, resume_handle);
if (e = NO_ERROR) or (e = ERROR_MORE_DATA) then
begin
for i := 0 to totalentries - 1 do
begin
lbxShares.Items.Add(Buf^[i].shi0_netname);
end;
end;
FreeMem(ServerName);
end;
Передаваемая структура :
type
_SHARE_INFO_0 = record
shi0_netname: LPWSTR;
end;
SHARE_INFO_0 = array [0..511] of _SHARE_INFO_0;
PSHARE_INFO_0 = ^SHARE_INFO_0;
Шары находит, но только на машинах NT
Что нужно сделать, чтобы искать и на NT и на 9X?
Подозреваю, что нужно использовать другую структуру, но при собственных экспериментах результата не добился, а в хелпе по этому ничего нет :(
← →
Rouse_ © (2004-09-16 20:35) [1]http://delphimaster.net/view/6-1091738810/
5-й пост...
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.062 c