Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.21;
Скачать: 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 вся ветка

Текущий архив: 2004.11.21;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.048 c
4-1097479480
FireMan_Alexey
2004-10-11 11:24
2004.11.21
Свободная оперативная память!


6-1094729314
Plaster
2004-09-09 15:28
2004.11.21
Неужели только IPX?


14-1099575770
DelphiN!
2004-11-04 16:42
2004.11.21
Сокеты на винде тормозят


1-1099438110
Змей
2004-11-03 02:28
2004.11.21
Richedit


1-1099712363
beavka
2004-11-06 06:39
2004.11.21
Трей - проблема