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

📄 unit1.cpp

📁 Sybase日志清除工具,可以定时清除
💻 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 + -