📄 unit1.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include <inifiles.hpp>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "SUIForm"
#pragma link "SUIButton"
#pragma link "SUIEdit"
#pragma link "trayicon"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
gs_app_path = ExtractFilePath(Application->ExeName);
TIniFile *ini = new TIniFile(gs_app_path + "config.ini");
try
{
gs_servername = ini->ReadString("database","servername","");
gs_logid = ini->ReadString("database","logid","");
gs_logpas = ini->ReadString("database","logpas","");
gl_time = ini->ReadInteger("config","time",5);
delete ini;
}
catch(...)
{
MessageBox(Application->Handle,"读取配置文件config.ini失败!","信息提示!",MB_OK+MB_ICONINFORMATION+MB_SYSTEMMODAL);
delete ini;
}
suiEdit_time->Text = IntToStr(gl_time);
Timer1->Interval = gl_time * 1000 * 60;
//设置数据库连接
AnsiString ls_constr;
ls_constr = "Provider=MSDASQL.1;Password="+gs_logpas+";Persist Security Info=True;User ID="+gs_logid+";Mode=Read;Extended Properties='DRIVER={Sybase System 11};UID="+gs_logid+";PWD="+gs_logpas+";SRVR="+gs_servername+";DB=master'";
ADOConnection1->ConnectionString = ls_constr ;
ADOConnection1->Connected = true;
ADOTable1->Active=true;
Label4->Caption = "当前连接服务器:" + gs_servername;
//suiEdit_time->Alignment = taCenter;
Label3->Caption = "作者:张大伟 QQ:75461616 mail:zhang_dw@msn.com";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::suiButton1Click(TObject *Sender)
{
gl_time = StrToInt(suiEdit_time->Text);
Timer1->Interval = gl_time * 1000 * 60;
TIniFile *ini = new TIniFile(gs_app_path + "config.ini");
try{
ini->WriteString("config","time",gl_time);
delete ini;
Label3->Caption="保存设置成功.";
}
catch(...)
{
Application->MessageBoxA("写入配置文件config.ini失败!",NULL,MB_OK+16);
delete ini;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::suiButton2Click(TObject *Sender)
{
TrayIcon1->Minimize();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::TrayIcon1Minimize(TObject *Sender)
{
TrayIcon1->Visible=true ;
suiMSNPopForm1->Title = "提示";
suiMSNPopForm1->MessageText = "日志清除工具后台运行,双击图标可恢复显示";
suiMSNPopForm1->Popup();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::TrayIcon1Restore(TObject *Sender)
{
TrayIcon1->Visible=false ;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
AnsiString ls_databasename,ls_sql;
int li_return;
ADOTable1->First();
for(int i = 1;i < ADOTable1->RecordCount; i++)
{
ls_databasename = ADOTable1->FieldByName("name")->AsString;
Label3->Caption = "正在清除 " + ls_databasename + " 数据库日志 ... ";
Label3->Update();
ls_sql = "dump transaction " + ls_databasename + " with no_log";
ADOTable1->Next();
ADOCommand1->CommandText = ls_sql ;
ADOCommand1->Execute() ;
}
Label3->Caption = "清除日志完成.";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::suiButton3Click(TObject *Sender)
{
Timer1->OnTimer(NULL);
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -