Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.24;
Скачать: CL | DM;

Вниз

NetApi32   Найти похожие ветки 

 
Style ©   (2003-05-20 08:30) [0]

Люди кто работал с сабжем. Как из него вытащить
NetShareAdd;

Пробывал так:
Написал global процедуру и описал подобную структуру как в Help

type
TShareInfo = record
NetName: pchar;
.....
.....
Path: pchar;
end;
PShareInfo = ^TShareInfo;
var
procedure NetShareAdd(ServerName: pchar; Level: dword; buf: PShare_Info;
param_err: pdword); stdcall; external; "netapi32.dll";

При юзании lpExit возвращает $08 .. Шаринг естественно не создается :(

Может структуру не правильно описал? в Cи шной хелпе buf -
указатель на структуру типа LPBYTE.. Чета я совсем не понял почему указатель на байт?


Помогите очень надо!


 
Digitman ©   (2003-05-20 08:56) [1]

function NetShareAdd(ServerName: p widechar; Level: dword; buf: PShare_Info;
param_err: pdword): NET_API_STATUS; stdcall; external "netapi32.dll";



 
Style ©   (2003-05-20 09:36) [2]

2 Digitman>> А описание PShare_Info не можешь дать??

Просто ServerName я все равно посылаю nil!
мне нужен localhost!






 
Style ©   (2003-05-20 09:38) [3]

Да и что такое NET_API_STATUS? Где его взять?


 
Style ©   (2003-05-20 09:41) [4]

Еще не понятно следующее
в структуре
typedef struct _SHARE_INFO_2

DWORD shi2_max_uses;
в хелпе написано
(unlimited if the value specified in shi2_max_uses
is -1).


DWORD = longword //signed не может быть -1


 
Digitman ©   (2003-05-20 09:55) [5]

NET_API_STATUS - это DWORD


стандартный хэлп от Борланда на эту тему читал ?

при level = 2:

typedef struct _SHARE_INFO_2 {
LPTSTR shi2_netname;
DWORD shi2_type;
LPTSTR shi2_remark;
DWORD shi2_permissions;
DWORD shi2_max_uses;
DWORD shi2_current_uses;
LPTSTR shi2_path;
LPTSTR shi2_passwd;
} SHARE_INFO_2, *PSHARE_INFO_2, *LPSHARE_INFO_2;

при level = 502:
typedef struct _SHARE_INFO_502 {
LPTSTR shi502_netname;
DWORD shi502_type;
LPTSTR shi502_remark;
DWORD shi502_permissions;
DWORD shi502_max_uses;
DWORD shi502_current_uses;
LPTSTR shi502_path;
LPTSTR shi502_passwd;
DWORD shi502_reserved;
PSECURITY_DESCRIPTOR shi502_security_descriptor;
} SHARE_INFO_502, *PSHARE_INFO_502, *LPSHARE_INFO_502


 
Digitman ©   (2003-05-20 09:58) [6]


> DWORD = longword //signed не может быть -1


зато DWORD"у ничто не мешает быть равным $FFFFFFFF )
это, по твоему, не -1 ?


 
Style ©   (2003-05-20 10:21) [7]

2 Digitman
ну не -1 но MaxUser точно :)

Только все равно не работает :(

type
NET_API_STATUS = dword;

TShare_Info = record
shi2_netname: pchar;
shi2_type: dword;
shi2_remark: pchar;
shi2_permissions: dword;
shi2_max_uses: dword;
shi2_current_uses: dword;
shi2_path: pchar;
shi2_passwd: pchar;
end;
PShare_Info = ^TShare_Info;

var
function NetShareAdd(ServerName: pwidechar; Level: dword; buf: PShare_Info;
param_err: pdword): NET_API_STATUS; stdcall; external "netapi32.dll";

procedure TForm1.Button1Click(Sender: TObject);
var
info: TShare_Info;
r: Net_Api_Status;
er: dword;

begin

info.shi2_netname := "php";
info.shi2_type := 0;
info.shi2_remark := "test share";
info.shi2_permissions := 0;
info.shi2_max_uses := $FFFFFFFF;
info.shi2_current_uses := 0;
info.shi2_path := "c:\php";
info.shi2_passwd := "";

r := NetShareAdd(nil,2,@info,@er);

Caption := "result = " + IntToStr(r) + " error = " + IntToStr(er);

end;


 
Style ©   (2003-05-20 10:28) [8]

Все понял

shi2_netname:PWideChar; // ОБЯЗАТЕЛЬНО PWideChar иначе работать не будет...
shi2_path:PWideChar;


 
Digitman ©   (2003-05-20 10:37) [9]


> ОБЯЗАТЕЛЬНО PWideChar


разумеется !)


 
Style ©   (2003-05-20 10:39) [10]

Ну в любом случае спасибо :)



Страницы: 1 вся ветка

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

Наверх




Память: 0.49 MB
Время: 0.015 c
14-78067
Mayor
2003-06-29 16:09
2003.07.24
Помогите решить задачку по физике


14-78090
race1
2003-07-08 09:03
2003.07.24
WM & ...


14-78056
Nick-From
2003-07-09 17:18
2003.07.24
Чем так уж плох монитор с укороченной элт?


14-78082
Мое имя (клоны все равно суксь)
2003-06-30 13:46
2003.07.24
Как загрузиться со второго раздела?


14-78099
Dmitriy O.
2003-07-08 10:28
2003.07.24
Как качественно