Вниз
Скачать: 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.025 c
10-1065133576
s_g
2003-10-03 02:26
2004.11.21
Мастера, подскажите интерфейс


3-1097755678
Настенька
2004-10-14 16:07
2004.11.21
сохранение новой ширины колонки


14-1099293701
вразлет
2004-11-01 10:21
2004.11.21
Опрос. Кто как голосовал?


3-1098653257
Alek_1
2004-10-25 01:27
2004.11.21
Ошибка в представлении


11-1082715252
BolikDimon
2004-04-23 14:14
2004.11.21
Не компилируется mirror.pas




   Наверх