亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? globalunit.pas

?? 實達企業在線EOL源碼
?? PAS
?? 第 1 頁 / 共 5 頁
字號:

   TGlobal=Class
   private
       FAccessDB       : TAccessDB;
       FAccessDialog   : TAccessDialog;
       FAccessDateTime : TAccessDateTime;
       FAccessFile     : TAccessFile;
       FAccessFinance  : TAccessFinance;
       FAccessForm     : TAccessForm;
       FAccessNum      : TAccessNum;
       FAccessOthers   : TAccessOthers;
       FAccessString   : TAccessString;
       FAccessSystem   : TAccessSystem;
     public
        Constructor  Create ;
        destructor  Destroy;Override;  
     Published
       property AccessDB       : TAccessDB Read FAccessDB;
       property AccessDateTime : TAccessDateTime Read FAccessDateTime;
       property AccessFile     : TAccessFile Read FAccessFile;
       property AccessFinance  : TAccessFinance Read FAccessFinance;
       property AccessForm     : TAccessForm Read FAccessForm;
       property AccessNum      : TAccessNum Read FAccessNum;
       property AccessOthers   : TAccessOthers Read FAccessOthers;
       property AccessString   : TAccessString Read FAccessString;
       property AccessSystem   : TAccessSystem Read FAccessSystem;
       property AccessDialog   : TAccessDialog Read FAccessDialog ;
   end;

function ShowFormOn(AForm: TForm; AControl: TWinControl): Boolean;
function ShowFormIn(AForm: TForm;AControl: TWinControl): boolean;
var
    Global:TGlobal;

implementation

//=====================================================================
 {TGlobal}

function ShowFormOn(AForm: TForm; AControl: TWinControl): Boolean;
var
  P : TPoint;
begin
  Result := False;
  if Assigned(AControl) and Assigned(AForm) then
  begin
    try
      P.X := AControl.Left;
      P.Y := AControl.Top;
      P := AControl.ClientToScreen(P);
      AForm.Left := P.X - 2;
      AForm.Top := P.Y;
      AForm.Width := AControl.ClientWidth;
      AForm.Height := AControl.ClientHeight;
      AForm.ShowModal;
      Result := True;
    except
    end;
  end;
end;

function ShowFormIn(AForm: TForm;AControl: TWinControl): boolean;
begin
  if Assigned(AControl) and Assigned(AForm) then
  begin
    AForm.Left := 0;
    AForm.Top := 0;
    AForm.Width := AControl.ClientWidth ;
    AForm.Height := AControl.ClientHeight ;
    AForm.Parent := AControl;
    AForm.WindowState := wsMaximized;

    AForm.Show;
  end;
  Result := False;
end;

Constructor  TGlobal.Create;
begin
   FAccessDB       := TAccessDB.Create;
   FAccessDateTime := TAccessDateTime.Create;
   FAccessFile     := TAccessFile.Create;
   FAccessFinance  := TAccessFinance.Create;
   FAccessForm     := TAccessForm.Create;
   FAccessNum      := TAccessNum.Create;
   FAccessOthers   := TAccessOthers.Create;
   FAccessString   := TAccessString.Create;
   FAccessSystem   := TAccessSystem.Create;
   FAccessDialog   := TAccessDialog.Create;
end;

destructor  TGlobal.Destroy;
begin
   if Assigned(FAccessDB) then FAccessDB.Free;
   if Assigned(FAccessDateTime) then FAccessDateTime.Free;
   if Assigned(FAccessFile) then FAccessFile.Free;
   if Assigned(FAccessFinance) then FAccessFinance.Free;
   if Assigned(FAccessForm) then FAccessForm.Free;
   if Assigned(FAccessNum) then FAccessNum.Free;
   if Assigned(FAccessOthers) then FAccessOthers.Free;
   if Assigned(FAccessString) then FAccessString.Free;
   if Assigned(FAccessSystem) then FAccessSystem.Free;
   if Assigned(FAccessDialog) then FAccessDialog.Free;

   inherited Destroy;
end;


//=====================================================================
{ TAccessDB }

constructor TAccessDB.Create;
begin
  ISRunTime:=False;
  ErrorCode:=0;
  ErrorMessage:='';
end;

destructor TAccessDB.Destroy;
begin
  inherited;
end;

//創建MSSQL類型別名
Function TAccessDB.CreateMSSQLAlias(AliasName,ServerName,DataBaseName,UserName:string):boolean;
var
  MyList: TStringList;
begin
  MyList := TStringList.Create;
  result:=true;

  IF Session.IsAlias(AliasName) then BEGIN
     Session.DeleteAlias(AliasName);
  END;

  try
    with MyList do
    begin
      Add('SERVER NAME='+ServerName);
      Add('DATABASE NAME='+DataBaseName);
      Add('USER NAME='+UserName);
    end;
    TRY
       Session.AddAlias(AliasName, 'MSSQL', MyList);
       ClearError;
    EXCEPT
      On e:Exception do
      begin
        ProcessError(e);
        Result := False;
      end;
    END;
  finally
    MyList.Free;
  end;
  if result then
     Session.SaveConfigFile;
end;

//創建ACCESS類型別名
Function TAccessDB.CreateACCESSAlias(AliasName,Path:string):boolean;
var
  MyList: TStringList;
begin
  MyList := TStringList.Create;
  result:=true;
  IF Session.IsAlias(AliasName) then BEGIN
     Session.DeleteAlias(AliasName);
  END;

  try
    with MyList do
    begin
      Add('DATABASE NAME='+Path);
    end;
    TRY
      Session.AddAlias(AliasName, 'MSACCESS', MyList);
      ClearError;
    EXCEPT
      On e:Exception do
      begin
        ProcessError(e);
        Result := False;
      end;
    END;
  finally
    MyList.Free;
  end;
  if result then
     Session.SaveConfigFile;
end;

//創建 PARADOX類型別名
Function TAccessDB.CreatePARADOXAlias(AliasName,Path:string):boolean;
var
  MyList: TStringList;
begin
  MyList := TStringList.Create;
  result:=true;
  IF Session.IsAlias(AliasName) then BEGIN
     Session.DeleteAlias(AliasName);
  END;
  try
    with MyList do
    begin
      Add('PATH='+Path);
    end;
    TRY
      Session.AddAlias(AliasName, 'STANDARD', MyList);
      ClearError;
    EXCEPT
      On e:Exception do
      begin
        ProcessError(e);
        Result := False;
      end;
    END;
  finally
    MyList.Free;
  end;
  if result then
     Session.SaveConfigFile;
end;

//創建書簽
Function TAccessDB.SetToBookmark(ADataSet: TDataSet; ABookmark: TBookmark): Boolean;
begin
  Result := False;
  with ADataSet do
    if Active and (ABookmark <> nil) and not (Bof and Eof) and
      BookmarkValid(ABookmark) then
    try
      ADataSet.GotoBookmark(ABookmark);
      Result := True;
      ClearError;
    except
      On e:Exception do
      begin
        ProcessError(e);
        Result := False;
      end;
    end;
end;
//add by masj on 2000.05.25
procedure TAccessDB.ClearError;
begin
    ErrorCode := 0;
    ErrorMessage := '';
end;

function  TAccessDB.DBIsError(var mErrorCode:Word;var mErrorMessage:string):boolean;
begin
  if (ErrorCode=0) and (ErrorMessage='') then result:=false
  else Result:=true;
  mErrorCode:=ErrorCode;
  mErrorMessage:=ErrorMessage;
end;

procedure TAccessDB.ProcessError(E:Exception);
var tmpDlg:TAccessDialog;
ResourceString
  cRunMessage='應用程序異常錯誤!';
begin

  tmpDlg := TAccessDialog.create;
  if ISRunTime then
  begin
    tmpDlg.ShowError(cRunMessage);
  end
  else begin
    tmpDlg.ShowError(e.Message+' '+e.classname);
  end;

  ErrorCode:=-1;    //返回值為負1時則為不知名的錯誤
  if e is EUpDateError then
    ErrorCode := EupdateError(e).errorcode;
  if e is EDBClient then
    ErrorCode := EDBClient(e).ErrorCode;
  if e is EDSWriter then
    ErrorCode := EDSWriter(e).ErrorCode;
  if e is EoleSysError then
    ErrorCode := EoleSysError(e).ErrorCode;
  if e is EDBEngineError then
    ErrorCode := EDBEngineError(e).errors[EDBEngineError(e).errorcount-1].ErrorCode;
  ErrorMessage:=e.message;
  tmpDlg.Free;

end;

procedure TAccessDB.DBSetRunState(mIsRunTime:Boolean=True);
begin
  IsRunTime := mIsRunTime;
end;

function  TAccessDB.DBGetRunState:boolean;
begin
  result:=IsRunTime;
end;



//=====================================================================

{ TAccessSystem }

constructor TAccessSystem.Create;
begin

end;

destructor TAccessSystem.Destroy;
begin
  inherited;
end;

function TAccessSystem.Encrypt(const S:ShortString):ShortString;
var
  i   : Byte;
  Key : Word;
begin
  {...Enacrypt a string..}

  Key:=ckeyCode1;
  {$IFDEF WIN32}
     SetLength(Result,Length(S));
  {$ELSE}
     Result[0]:=Char(Length(S));
  {$ENDIF}

  for i:=1 to Length(S) do
  begin
    Result[i]:=Char( Byte(S[i]) XOR (Key SHR 8) );
    Key :=( Byte(Result[i])+Key )*ckeyCode2+ckeyCode3;
  end;
end;

function TAccessSystem.Decrypt(const S:ShortString):ShortString;
var
  i   : Byte;
  Key : Word;
begin
  {...Enacrypt a string..}

  Key:=ckeyCode1;
  {$IFDEF WIN32}
     SetLength(Result,Length(S));
  {$ELSE}
     Result[0]:=Char(Length(S));
  {$ENDIF}

  for i:=1 to Length(S) do
  begin
    Result[i]:=Char( Byte(S[i]) XOR (Key SHR 8) );
    Key :=( Byte(S[i])+Key )*ckeyCode2+ckeyCode3;
  end;
end;

{$IFDEF WIN32}
function RestartDialog(Wnd:HWnd; Reson:Pchar;Flags:Integer):Integer;Stdcall;
external 'Shell32.dll' index 59;
{$ENDIF}

//重新啟動Windows操作系統。if Result=True then execute success,else falied.
function TAccessSystem.RestartWindows:Integer;
begin
  {$IFDEF WIN32}
     Result:=RestartDialog(0,Nil,ew_RestartWindows);
  {$ELSE}
     ShowMessage('Some system setting have been changed-windows needs to restart!');
     Result:=ExitWindows(ew_RestartWindows,0);
  {$ENDIF}
end;

//打開鏈接
procedure TAccessSystem.Link(Url:string);
begin
   ShellExecute(GetDesktopWindow(),nil,pchar(Url),nil,nil,sw_shownormal);
end;

//獲得本機名稱
Function TAccessSystem.ComputerName : String;
var
   CNameBuffer  : PChar;
  fl_loaded    : Boolean;
  CLen         : ^DWord;
begin
    GetMem(CNameBuffer,255);
    New(CLen);
    CLen^:= 255;
    fl_loaded := GetComputerName(CNameBuffer,CLen^);
    if fl_loaded then
      Result := StrPas(CNameBuffer)
    else
      Result := 'Unkown';
    FreeMem(CNameBuffer,255);
    Dispose(CLen);
end;

// 獲得系統的臨時目錄
Function TAccessSystem.GetTempDirectory: String;
var
  TempDir: array[0..255] of Char;
begin
  GetTempPath(255, @TempDir);
  Result := StrPas(TempDir);
end;

//獲得SQLServer服務器名稱
Function TAccessSystem.GetServerName(AliasName:string):string;
var
  Strs:TStringList;
begin
  Strs := TStringList.Create;
  try
    session.GetAliasParams(AliasName,Strs);
    Result:=Strs.Values['Server Name'];
  finally
    Strs.Free;
  end;
end;

//返回Windows系統路徑,引用了前面的slash函數
Function TAccessSystem.getwinsysdir:string;
var
  p:pchar;
  z:integer;
begin
  z:=255;
  getmem(p,z);
  getsystemdirectory(p,z);
  result:=Global.FAccessString.slash(string(p));
  freemem(p,z);
end;

//返回Windows路徑,引用了前面的slash函數
Function TAccessSystem.getwindir:string;
var
  p:pchar;
  z:integer;
begin
  z:=255;
  getmem(p,z);
  getwindowsdirectory(p,z);
  result:=Global.FAccessString.slash(string(p));
  freemem(p,z);
end;

{返回正在使用的EXE文件安裝路徑}
Function TAccessSystem.getinstalldir:string;
begin
  result:=Global.FAccessString.slash(extractfiledir(paramstr(0)));
end;

{讀取一個注冊值}
Function TAccessSystem.getregvalue(root:integer;key,value:string):string;
var
  rg:Tregistry;
begin
  rg:=Tregistry.create;
  try
    rg.rootkey:=root;
    if rg.OpenKey(key,false) then

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品午夜在线观看| 日韩精品久久久久久| 亚洲人成小说网站色在线 | 欧美精品一区二区三区久久久| 久久久综合激的五月天| 亚洲成人午夜影院| 99亚偷拍自图区亚洲| 精品噜噜噜噜久久久久久久久试看| 亚洲欧洲日韩av| 国产精品99久| 日韩欧美国产不卡| 亚洲成人精品影院| 色综合天天性综合| 国产精品福利影院| 国产精品综合一区二区三区| 欧美男人的天堂一二区| 国产精品久久久久影院亚瑟| 国产真实精品久久二三区| 欧美丰满一区二区免费视频| 夜夜爽夜夜爽精品视频| av不卡在线播放| 国产人伦精品一区二区| 国产揄拍国内精品对白| 精品国产一区二区三区不卡| 青青国产91久久久久久| 欧美精品v国产精品v日韩精品| 亚洲精品综合在线| 97精品电影院| 椎名由奈av一区二区三区| 成人激情免费网站| 国产精品国产三级国产专播品爱网 | av影院午夜一区| 国产日本亚洲高清| 成人激情校园春色| 成人免费在线播放视频| www.成人网.com| 《视频一区视频二区| 成人午夜大片免费观看| 国产三级精品三级在线专区| 高清久久久久久| 国产农村妇女毛片精品久久麻豆| 精品无人码麻豆乱码1区2区 | 成人性生交大片免费| 亚洲国产成人一区二区三区| 大美女一区二区三区| 国产精品乱码一区二区三区软件 | 久久精品国产亚洲a| 精品国产一区久久| 成人综合日日夜夜| 亚洲欧美日韩国产综合在线| 欧美综合视频在线观看| 午夜精品一区二区三区三上悠亚| 欧美一区二区三区视频在线观看| 免费观看一级欧美片| 久久久久久久综合狠狠综合| www.欧美日韩| 婷婷综合另类小说色区| 日韩欧美一区二区久久婷婷| 夫妻av一区二区| 亚洲一区二区偷拍精品| 欧美电影免费观看高清完整版 | av成人老司机| 青娱乐精品视频| 中文乱码免费一区二区| 欧洲亚洲精品在线| 捆绑调教一区二区三区| 国产精品婷婷午夜在线观看| 欧美丝袜丝交足nylons| 国产一区二区影院| 一区二区三区四区亚洲| wwwwxxxxx欧美| 欧美影院精品一区| 国产成人亚洲精品青草天美| 亚洲一级不卡视频| 国产欧美日韩亚州综合 | 日韩精品一区二区三区蜜臀| 成人黄色免费短视频| 天天影视色香欲综合网老头| 国产亚洲一本大道中文在线| 欧美精品一二三四| 99re这里只有精品首页| 狠狠色综合日日| 性做久久久久久久免费看| 中文字幕va一区二区三区| 欧美另类z0zxhd电影| 成人激情av网| 国产一区二区91| 日韩成人免费电影| 一区二区成人在线| 国产精品亲子乱子伦xxxx裸| 精品免费一区二区三区| 欧美巨大另类极品videosbest | 亚洲欧洲日产国码二区| 久久亚洲一区二区三区明星换脸| 欧美日韩一级大片网址| 99久精品国产| 成人小视频在线| 久久99九九99精品| 日韩精品一级中文字幕精品视频免费观看 | 色婷婷激情综合| 波多野结衣一区二区三区| 国产精品99久久久久久有的能看 | 亚洲色图在线播放| 欧美国产欧美亚州国产日韩mv天天看完整| 91精品国产高清一区二区三区蜜臀 | 精品一区二区免费看| 天天亚洲美女在线视频| 亚洲第一av色| 五月婷婷色综合| 亚洲电影激情视频网站| 亚洲午夜在线视频| 亚洲国产成人va在线观看天堂| 亚洲特黄一级片| 亚洲精选免费视频| 伊人性伊人情综合网| 一区二区三区 在线观看视频| 国产精品国产三级国产aⅴ原创| 国产精品美女久久久久久久久久久 | 欧美放荡的少妇| 91精品综合久久久久久| 5858s免费视频成人| 在线综合+亚洲+欧美中文字幕| 欧美日韩久久久| 欧美军同video69gay| 日韩欧美不卡在线观看视频| 日韩欧美第一区| 久久亚洲一级片| 欧美国产丝袜视频| 亚洲免费av高清| 午夜久久电影网| 美女网站在线免费欧美精品| 久久97超碰国产精品超碰| 国产精品亚洲专一区二区三区| 国产精品18久久久久| www.爱久久.com| 欧美日韩日日摸| 欧美成人三级在线| 国产精品毛片无遮挡高清| 亚洲美女在线国产| 日韩成人av影视| 丁香六月综合激情| 欧美视频在线一区| 精品乱人伦小说| 亚洲欧美一区二区三区极速播放| 午夜精品福利在线| 精品一区二区综合| 99精品欧美一区| 日韩欧美一区电影| 亚洲欧洲99久久| 免费观看一级欧美片| 成人美女在线观看| 欧美高清dvd| 中文字幕在线免费不卡| 偷拍一区二区三区四区| 成人午夜激情视频| 91精品国产综合久久精品app| 久久久久久久久99精品| 一区二区三区日韩欧美| 狠狠狠色丁香婷婷综合激情| 97久久精品人人做人人爽| 欧美一级生活片| 亚洲欧美自拍偷拍色图| 亚洲电影欧美电影有声小说| 国内成人自拍视频| 91黄视频在线观看| 久久老女人爱爱| 五月婷婷综合网| 99久久精品免费看| 日韩精品一区国产麻豆| 一片黄亚洲嫩模| 国产成人av电影在线播放| 7777精品伊人久久久大香线蕉 | 天天综合色天天| 99久久夜色精品国产网站| 欧美成人vps| 视频在线观看一区二区三区| 一本一道久久a久久精品| 久久影视一区二区| 久久精品国产亚洲高清剧情介绍 | 1000部国产精品成人观看| 老司机免费视频一区二区| 欧美精选午夜久久久乱码6080| 国产精品电影一区二区三区| 国产精品综合二区| 欧美videos大乳护士334| 图片区小说区区亚洲影院| 在线观看免费亚洲| 亚洲精品久久久久久国产精华液 | 久久国产欧美日韩精品| 欧美日韩精品欧美日韩精品一| 亚洲蜜桃精久久久久久久| 99视频一区二区三区| 国产欧美一区二区精品久导航| 国模一区二区三区白浆| 2022国产精品视频| 国精品**一区二区三区在线蜜桃| 日韩精品一区二区三区视频 | 国产成人综合精品三级| 久久综合av免费| 国产一区福利在线|