Создание нового пользователя NetUserAdd

Создание нового пользователя NetUserAdd

unit Unit1;
{©Drkb v.3(2007): www.drkb.ru}
interface
uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;
type
 TForm1 = class(TForm)
  Button1: TButton;
  procedure Button1Click(Sender: TObject);
 private
  { Private declarations }
 public
  { Public declarations }
 end;
 LPUSER_INFO_2 = ^USER_INFO_2;
 {$EXTERNALSYM LPUSER_INFO_2}
 PUSER_INFO_2 = ^USER_INFO_2;
 {$EXTERNALSYM PUSER_INFO_2}
 _USER_INFO_2 = record
  usri2_name: LPWSTR;
  usri2_password: LPWSTR;
  usri2_password_age: DWORD;
  usri2_priv: DWORD;
  usri2_home_dir: LPWSTR;
  usri2_comment: LPWSTR;
  usri2_flags: DWORD;
  usri2_script_path: LPWSTR;
  usri2_auth_flags: DWORD;
  usri2_full_name: LPWSTR;
  usri2_usr_comment: LPWSTR;
  usri2_parms: LPWSTR;
  usri2_workstations: LPWSTR;
  usri2_last_logon: DWORD;
  usri2_last_logoff: DWORD;
  usri2_acct_expires: DWORD;
  usri2_max_storage: DWORD;
  usri2_units_per_week: DWORD;
  usri2_logon_hours: PBYTE;
  usri2_bad_pw_count: DWORD;
  usri2_num_logons: DWORD;
  usri2_logon_server: LPWSTR;
  usri2_country_code: DWORD;
  usri2_code_page: DWORD;
 end;
 {$EXTERNALSYM _USER_INFO_2}
 USER_INFO_2 = _USER_INFO_2;
 {$EXTERNALSYM USER_INFO_2}
 TUserInfo2 = USER_INFO_2;
 PUserInfo2 = puser_info_2;
 function NetUserAdd(ServerName: LPCWSTR; Level: DWORD;
  Buff: PByte; var Parm_Err: DWORD): DWORD; stdcall;
  external 'netapi32.dll';
var
 Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
const
 NERR_Success = 0;
 USER_PRIV_USER = 1;
 UF_SCRIPT = $0001;
 UF_DONT_EXPIRE_PASSWD = $10000;
var
 UserInfo: TUserInfo2;
 Parm_Err: DWORD;
begin
 ZeroMemory(@UserInfo, SizeOf(TUserInfo2));
 UserInfo.usri2_name := 'TestUser';
 UserInfo.usri2_password := '123';
 UserInfo.usri2_priv := USER_PRIV_USER;
 UserInfo.usri2_flags := UF_SCRIPT or UF_DONT_EXPIRE_PASSWD;
 if NetUserAdd(nil, 2, @UserInfo, Parm_Err) <> NERR_Success then
  RaiseLastOSError
 else
  ShowMessage('Пользователь TestUser с паролем 123 успешно добавлен.');
end;
end.
Взято из http://forum.sources.ru Автор: Rouse_

Отправить комментарий

Проверка
Антиспам проверка
Image CAPTCHA
...