1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| function AddUser(FUsername, fpassword, fhomedir, fcomment, fscript, fserver : string; privi, flags : cardinal) : LongInt;
var
tUserName : Array [0..255] Of WideChar;
tPassword : Array [0..255] Of WideChar;
tHomeDir : Array [0..255] Of WideChar;
tComment : Array [0..255] Of WideChar;
tScript : Array [0..255] Of WideChar;
tServer : Array [0..255] Of WideChar;
tgroupe : Array [0..255] Of WideChar;
MyInfo : USER_INFO_1;
Where : DWORD;
begin
StringToWideChar(FUserName,@tUserName,255);
StringToWideChar(FPassword,@tPassword,255);
StringToWideChar(FHomeDir,@tHomeDir,255);
StringToWideChar(FComment,@tComment,255);
StringToWideChar(FScript,@tScript,255);
StringToWideChar(FServer,@tServer,255);
MyInfo.usri1_name:=@tUserName;
MyInfo.usri1_password:=@tPassword;
MyInfo.usri1_password_age:=1;
MyInfo.usri1_priv:=privi;
MyInfo.usri1_home_dir:=@tHomeDir;
MyInfo.usri1_comment:=@tComment;
MyInfo.usri1_flags:=flags; // allways include UF_SCRIPT !!!
MyInfo.usri1_script_path := @tScript;
NetUserAdd(@tServer, 1, @MyInfo, @Where);
StringToWideChar('ENQ',@tgroupe,255);
NetGroupAddUser(@tServer, @tGroupe, @tUsername);
StringToWideChar('z_enqueteurs',@tgroupe,255);
NetGroupAddUser(@tServer, @tGroupe, @tUsername);
Result := Where;
end; |
Partager