Вниз
Скачать: 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.023 c
3-1098696836
Карелин Артем
2004-10-25 13:33
2004.11.21
Нужен сложный "григ", в котором можно показать связанные таблицы.


3-1098416333
sanek
2004-10-22 07:38
2004.11.21
как с помощью random выбрать запись из таблицы


1-1099464334
Uran
2004-11-03 09:45
2004.11.21
Проверка содержит ли строка дату


14-1099312241
Dmitriy O.
2004-11-01 15:30
2004.11.21
270 мб кода. за 2 года !


3-1098845518
vituha
2004-10-27 06:51
2004.11.21
dBase to Paradox




   Наверх