![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему не удаётся просмотреть Shared ресурсы на другом компе?
OneFragLeft © (2004-12-02 08:49:00)Вот код:
....
var NetShareEnumNT :function (ServerName :PWChar;
Level :DWORD;
Bufptr :Pointer;
Prefmaxlen :DWORD;
EntriesRead,
TotalEntries,
resume_handle:LPDWORD): DWORD; stdcall;
....
function GetSharesNT(var Value:integer; ServerName:PWChar):PShareInfo2Array;
var
FLibHandle : THandle;
ShareNT : PShareInfo2Array;
entriesread,totalentries:DWORD;
begin
FLibHandle := LoadLibrary('NETAPI32.DLL');
if FLibHandle = 0 then Exit;
//Связываем функцию
@NetShareEnumNT := GetProcAddress(FLibHandle,'NetShareEnum');
if not Assigned(NetShareEnumNT) then
begin
FreeLibrary(FLibHandle);
Exit;
end;
ShareNT := nil;
if NetShareEnumNT( ServerName,2,@ShareNT,DWORD(-1),
@entriesread,@totalentries,nil) <> 0 then
begin
FreeLibrary(FLibHandle);
Exit;
end;
Value:=entriesread;
Result:= ShareNT ;
end;
Так вот, если в функцию передаю имя своего компьютера, то все гладко(айпишник тоже катит),
а вот если имя соседнего компьютера, то вылетаем с ошибкой: Access violation и там адрес...
Что не так делаю? Поясните пожалуйста.
Rouse_ (2004-12-02 11:22:00) [1]Да потому что справку не прочитал, а там ясно сказано, что для того чтоб использовать _SHARE_INFO_2 нужны права админа...
http://rouse.front.ru
там все есть ...