Вниз
Скачать: CL | DM;

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 вся ветка

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



Память: 0.45 MB
Время: 0.024 c
8-1093057941
race1
2004-08-21 07:12
2004.11.21
oldest directx


3-1098641955
Robin Hood
2004-10-24 22:19
2004.11.21
Обновление базы данных с помощью UpdateSQL


14-1099658239
}|{yk
2004-11-05 15:37
2004.11.21
Суперзагадка дня


3-1098264700
GALIM
2004-10-20 13:31
2004.11.21
Как добавить записи в dbf-таблицу запросом Insert через ADO


4-1097440931
Прямой
2004-10-11 00:42
2004.11.21
Инсталяция в W2K и старше, Где Windows берет размер установленног




   Наверх