📄 gspyya06.pas
字号:
unit GSPYYA06;
interface
uses
Windows, Messages, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dbcgrids, Grids, DBGrids, ADODB, StdCtrls, Buttons, ExtCtrls,
StrUtils, ExtDlgs, ComCtrls, math, frxDesgn, frxClass, frxDBSet, Menus,
SysUtils, DB, inifiles,ShellApi, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdMessageClient, IdSMTP, IdMessage;
type
Tf_GSPYYA06 = class(TForm)
Button6: TButton;
Button2: TButton;
Label1: TLabel;
Edit2: TEdit;
Label2: TLabel;
Edit3: TEdit;
Label3: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
Label4: TLabel;
Button1: TButton;
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure FormCreate(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
bNew:bool;
bOK:bool;
end;
var
f_GSPYYA06: Tf_GSPYYA06;
myinifile:TInifile;
implementation
uses data, main;
{$R *.dfm}
procedure Tf_GSPYYA06.FormCreate(Sender: TObject);
var
s1,s2,s3,s4:string;
filename:string;
begin
filename:=ExtractFilePath(paramstr(0))+'dblink.ini';
myinifile:=Tinifile.create(filename);
s1 := myinifile.readstring('sn','v','') ;//'bbb';//服务器名
s2 := myinifile.readstring('us','v','') ;//'sa'; //SQL用户名
s3 := myinifile.readstring('lp','v','') ;//'bbb'; //密码
s4 := myinifile.readstring('db','v','') ;//'bbb'; //密码
edit2.Text:=s1;
edit3.Text:=s2;
edit4.Text:=s3;
edit5.Text:=s4;
end;
//Tab
procedure Tf_GSPYYA06.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=13 then
Begin
key:=0;
perform(WM_NEXTDLGCTL,0,0);
end
else if key=VK_ESCAPE then close;
end;
procedure Tf_GSPYYA06.Button6Click(Sender: TObject);
begin
bOK:=false;
close;
end;
procedure Tf_GSPYYA06.Button1Click(Sender: TObject);
var
s,s1,s2,s3,s4:string;
filename:string;
sDB:string;
query:TADOQuery;
ComputerName: String;
CName: pChar;
CSize: ^DWORD;
ServerWin: HWND;
TempADOConnection: TADOConnection;
TempADOQuery: TADOQuery;
sFileName:string;
sqlPath : String;
dataFile : String;
logFile : String;
createDbSql : String;
dbSize:string;
begin
filename:=ExtractFilePath(paramstr(0))+'dblink.ini';
myinifile:=Tinifile.create(filename);
sDB:=myinifile.readstring('ac','v','');
try
Winexec(pChar('sqlmangr.exe'),SW_HIDE);
ServerWin:= FindWindow(nil,'SQL Server 服务管理器');
ShowWindow(ServerWin,SW_HIDE);
TempADOConnection:= TADOConnection.Create(nil);
TempADOConnection.LoginPrompt:= false;
TempADOQuery:= TADOQuery.Create(nil);
TempADOQuery.Connection:= TempADOConnection;
GetMem(CName,255);
New(CSize);
GetComputerName(CName,CSize^);
ComputerName:= StrPas(CName);
TempADOConnection.ConnectionString:= 'Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Data Source='''+Trim(ComputerName)+'''';
s:='EXEC sp_attach_db @dbname = N'+char(39)+'CYII'+char(39)+','+
'@filename1 = N'+char(39)+ExtractFilePath(paramstr(0))+'CYII_Data.MDF'+char(39)+
','+'@filename2 = N'+char(39)+ExtractFilePath(paramstr(0))+'CYII_Log.LDF'+char(39);
TempADOQuery.Close;
TempADOQuery.SQL.Text:= s;
TempADOQuery.ExecSQL;
{s:='EXEC sp_attach_db @dbname = N'+char(39)+'GSPYYa'+char(39)+','+
'@filename1 = N'+char(39)+ExtractFilePath(paramstr(0))+'GSPYYa_Data.MDF'+char(39)+
','+'@filename2 = N'+char(39)+ExtractFilePath(paramstr(0))+'GSPYYa_Log.LDF'+char(39);
TempADOQuery.Close;
TempADOQuery.SQL.Text:= s;
TempADOQuery.ExecSQL;}
Messagebox(handle,'数据库安装成功!','提醒',MB_OK+MB_ICONINFORMATION);
finally
FreeMem(CName,255);
Dispose(CSize);
end;
end;
procedure Tf_GSPYYA06.Button2Click(Sender: TObject);
var
filename:string;
myinifile:TInifile;
begin
if Edit2.Text='' then
begin
showmessage('请输入服务器名称。');
Edit2.SetFocus;
exit;
end;
if Edit3.Text='' then
begin
showmessage('请输入数据库帐号。');
Edit3.SetFocus;
exit;
end;
if Edit5.Text='' then
begin
showmessage('请输入数据库名称。');
Edit5.SetFocus;
exit;
end;
filename:=ExtractFilePath(paramstr(0))+'dblink.ini';
myinifile:=Tinifile.create(filename);
myinifile.writestring('style','v','sql');
myinifile.writestring('sn','v',Edit2.Text);
myinifile.writestring('us','v',Edit3.Text);
myinifile.writestring('lp','v',Edit4.Text);
myinifile.writestring('db','v',Edit5.Text);
bOK:=true;
close;
//dm.SetConn();
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -