139 lines
4.0 KiB
ObjectPascal
139 lines
4.0 KiB
ObjectPascal
unit U_DataLink;
|
|
|
|
interface
|
|
|
|
uses
|
|
SysUtils, Classes, DB, ADODB, ImgList, Controls, cxStyles, cxLookAndFeels,
|
|
Windows, Messages, forms, OleCtnrs, DateUtils, cxClasses, ExtCtrls, SyncObjs,
|
|
dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel,
|
|
dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle,
|
|
dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans,
|
|
dxSkinHighContrast, dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky,
|
|
dxSkinLondonLiquidSky, dxSkinMcSkin, dxSkinMetropolis,
|
|
dxSkinMetropolisDark, dxSkinMoneyTwins, dxSkinOffice2007Black,
|
|
dxSkinOffice2007Blue, dxSkinOffice2007Green, dxSkinOffice2007Pink,
|
|
dxSkinOffice2007Silver, dxSkinOffice2010Black, dxSkinOffice2010Blue,
|
|
dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
|
|
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin,
|
|
dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,
|
|
dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,
|
|
dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine,
|
|
dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue;
|
|
|
|
type
|
|
TMyThread = class(TThread)
|
|
protected
|
|
procedure Execute; override;
|
|
end;
|
|
|
|
var
|
|
DConString: string; {全局连接字符串}
|
|
server, dtbase, user, pswd: string; {数据库连接参数}
|
|
DCurHandle: hwnd; //当前窗体句柄
|
|
DName: string; //#用户名#//
|
|
DCode: string; //#用户编号#//
|
|
PicSvr: string; //#IP地址#//
|
|
Ddatabase: string; //#数据库名称#//
|
|
DTitCaption: string; //#主窗体名称#//
|
|
DParameters1, DParameters2, DParameters3, DParameters4, DParameters5: string; // 外部参数;
|
|
DParameters6, DParameters7, DParameters8, DParameters9, DParameters10: string; //外部参数;
|
|
OldDllApp: Tapplication; //保存原有句柄
|
|
NewDllApp: Tapplication; //当前句柄
|
|
MainApplication: Tapplication;
|
|
DFormCode: integer; //当前窗口号
|
|
IsDelphiLanguage: integer;
|
|
DServerDate: TdateTime; //服务器时间
|
|
DCompany: string; //公司
|
|
IpCall: Integer;
|
|
IpWLDZStr: string;
|
|
UserDataFlag: string;
|
|
|
|
type
|
|
TDataLink_TradeManage = class(TDataModule)
|
|
AdoDataLink: TADOQuery;
|
|
ADOLink: TADOConnection;
|
|
ThreeImgList: TImageList;
|
|
ThreeLookAndFeelCol: TcxLookAndFeelController;
|
|
ThreeColorBase: TcxStyleRepository;
|
|
SHuangSe: TcxStyle;
|
|
SkyBlue: TcxStyle;
|
|
Default: TcxStyle;
|
|
QHuangSe: TcxStyle;
|
|
Red: TcxStyle;
|
|
FontBlue: TcxStyle;
|
|
TextSHuangSe: TcxStyle;
|
|
FonePurple: TcxStyle;
|
|
FoneClMaroon: TcxStyle;
|
|
FoneRed: TcxStyle;
|
|
RowColor: TcxStyle;
|
|
handBlack: TcxStyle;
|
|
cxBlue: TcxStyle;
|
|
Timer_link: TTimer;
|
|
procedure DataModuleDestroy(Sender: TObject);
|
|
procedure DataModuleCreate(Sender: TObject);
|
|
procedure Timer_linkTimer(Sender: TObject);
|
|
|
|
private
|
|
{ Private declarations }
|
|
public
|
|
{ Public declarations }
|
|
end;
|
|
|
|
TMakebar = procedure(ucData: pchar; nDataLen: integer; nErrLevel: integer; nMask: integer; nBarEdition: integer; szBmpFileName: pchar; nScale: integer); stdcall;
|
|
|
|
TMixtext = procedure(szSrcBmpFileName: PChar; szDstBmpFileName: PChar; sztext: PChar; fontsize, txtheight, hmargin, vmargin, txtcntoneline: integer); stdcall;
|
|
|
|
var
|
|
DataLink_TradeManage: TDataLink_TradeManage;
|
|
CriticalSection: TCriticalSection; {声明临界}
|
|
|
|
implementation
|
|
{$R *.dfm}
|
|
|
|
procedure TMyThread.Execute;
|
|
begin
|
|
FreeOnTerminate := True;
|
|
CriticalSection.Enter;
|
|
try
|
|
with DataLink_TradeManage.AdoDataLink do
|
|
begin
|
|
close;
|
|
sql.Clear;
|
|
sql.Add('select getdate()');
|
|
open;
|
|
end;
|
|
except
|
|
try
|
|
with DataLink_TradeManage.ADOLink do
|
|
begin
|
|
Connected := false;
|
|
ConnectionString := DConString;
|
|
LoginPrompt := false;
|
|
Connected := true;
|
|
end;
|
|
except
|
|
|
|
end;
|
|
end;
|
|
CriticalSection.Leave;
|
|
end;
|
|
|
|
procedure TDataLink_TradeManage.DataModuleDestroy(Sender: TObject);
|
|
begin
|
|
CriticalSection.Free;
|
|
DataLink_TradeManage := nil;
|
|
end;
|
|
|
|
procedure TDataLink_TradeManage.DataModuleCreate(Sender: TObject);
|
|
begin
|
|
CriticalSection := TCriticalSection.Create;
|
|
end;
|
|
|
|
procedure TDataLink_TradeManage.Timer_linkTimer(Sender: TObject);
|
|
begin
|
|
TMyThread.Create(False);
|
|
end;
|
|
|
|
end.
|
|
|