home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2002 April
/
Chip_2002-04_cd1.bin
/
zkuste
/
delphi
/
kolekce
/
d56
/
NT.ZIP
/
NTAddUser.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
2002-01-18
|
3KB
|
80 lines
unit NTAddUser;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, NTTools;
type
TNTAddUser = class(TComponent)
private
{ Private declarations }
FServer:String;
FUserName:String;
FPassword:String;
FPasswordAge:DWORD;
FPrivileges:DWORD;
FHomeDir:String;
FComment:String;
FScript:String;
FFlags:DWORD;
protected
{ Protected declarations }
public
{ Public declarations }
published
{ Published declarations }
property Server:String read FServer write FServer;
property UserName:String read FUserName write FUserName;
property Password:String read FPassword write FPassword;
property Privileges:DWORD read FPrivileges write FPrivileges default 1;
property Flags:DWORD read FFlags write FFlags default 1;
property HomeDir:String read FHomeDir write FHomeDir;
property Comment:String read FComment write FComment;
property Script:String read FScript write FScript;
function Execute:LongInt;
end;
Type USER_INFO_1=record
usri1_name:LPWSTR; usri1_password:LPWSTR; usri1_password_age:DWORD; usri1_priv:DWORD; usri1_home_dir:LPWSTR; usri1_comment:LPWSTR; usri1_flags:DWORD; usri1_script_path:LPWSTR;End;
function NetUserAdd(Server:PWideChar;Level:DWORD;Buffer:PChar;ParmError:PChar):LongInt; stdcall; external 'netapi32.dll';
procedure Register;
implementation
function TNTAddUser.Execute: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;
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:=FPasswordAge;
MyInfo.usri1_priv:=FPrivileges;
MyInfo.usri1_home_dir:=@tHomeDir;
MyInfo.usri1_comment:=@tComment;
MyInfo.usri1_flags:=(FFlags or UF_SCRIPT); // allways include UF_SCRIPT !!!
MyInfo.usri1_script_path:=@tScript;
NetUserAdd(@tServer,1,@MyInfo,@Where);
Result:=Where;
end;
procedure Register;
begin
RegisterComponents('NT Tools - User Management', [TNTAddUser]);
end;
end.