⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pfgusermanager.pas

📁 delphi编写与Palm数据交换管道连接程序。
💻 PAS
字号:
{***************************************************************
 *
 * Unit Name: pfgUserManager
 * Purpose  :
 * Author   :
 * History  :
 *
 ****************************************************************}

unit pfgUserManager;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls;

type
  TpfgUserManager = class(TComponent)
  private
    FUserCount: SmallInt;
    function GetUserCount: Smallint;
    { Private declarations }
  protected
    { Protected declarations }
  public
    { Public declarations }
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    function GetUserList(ts:tstrings):SmallInt;
    function GetUserDirectory(const username:string):string;
    // Added by Mert //
    function AddUser(UserName:String;ProfileUser:boolean):LongInt;
    function DeleteUser(UserName:String):longint;
    // End of Mert //
  published
    { Published declarations }
    Property UserCount: Smallint  read GetUserCount;
  end;

procedure Register;

implementation
uses
  pfgWTypes,
  pfgUserData;
procedure Register;
begin
  RegisterComponents('Palm Pilot', [TpfgUserManager]);
end;

{ TpfgUserManager }

function TpfgUserManager.AddUser(UserName: String;ProfileUser:boolean): LongInt;
begin
Result:=UmAddUser(Pchar(UserName),ProfileUser);
end;

function TpfgUserManager.DeleteUser(UserName: String): longint;
Var
UserID:Longint;
begin
UmGetIDFromName(PCHAR(UserName),UserID);
result:=UmDeleteUser(UserID);
end;

constructor TpfgUserManager.Create(AOwner: TComponent);
begin
  inherited;
  FUserCount:=-1;
end;

destructor TpfgUserManager.Destroy;
begin
  inherited;

end;

function TpfgUserManager.GetUserCount: Smallint;
begin
  if FUserCount=-1 then
  begin
    FUserCount:= UmGetUserCount;
  end;
  result :=FUserCount;
end;

function TpfgUserManager.GetUserDirectory(const username: string): string;
var
//  i:smallint;
  dwUserID : LongInt;
  UserDirBuffer:string;
  UserDirBufSize: SmallInt;
begin
  UmGetIDFromName(PTChar(username),dwUserID);
  UserDirBufSize:=255;
  setlength(UserDirBuffer,UserDirBufSize);
  UmGetRootDirectory(pchar(UserDirBuffer), UserDirBufSize);
  setlength(UserDirBuffer,UserDirBufSize);
  result:= UserDirBuffer;
  UserDirBufSize:=255;
  setlength(UserDirBuffer,UserDirBufSize);
  UmGetUserDirectory(dwUserID,pchar(UserDirBuffer),UserDirBufSize);
  setlength(UserDirBuffer,UserDirBufSize);
  result:= result+UserDirBuffer;
end;

function TpfgUserManager.GetUserList(ts: tstrings): SmallInt;
var
  i:smallint;
  dwUserID : LongInt;
  UserNameBuffer:string;
  UserNameBufSize: SmallInt;
begin
  ts.BeginUpdate;
  ts.Clear;
  for i := 0 to UserCount-1 do
  begin
    UmGetUserID(i,dwUserID);
    UserNameBufSize:=100;
    setlength(UserNameBuffer,UserNameBufSize);
    UmGetUserName(dwUserID,PChar(UserNameBuffer),UserNameBufSize);
    setlength(UserNameBuffer,UserNameBufSize);
    ts.add(UserNameBuffer);
  end;
  ts.EndUpdate;
  result:=UserCount;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -