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

📄 mainform.h

📁 该程序实现了SQL数据库文件(mdf,ldf)的自动安装,备份及还原.
💻 H
字号:
//---------------------------------------------------------------------------

#ifndef MainFormH
#define MainFormH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include <ADODB.hpp>
#include <DB.hpp>
#include <windows.h>
#include <ComCtrls.hpp>
#include <Graphics.hpp>
#include "cxShellBrowserDialog.hpp"
#include <Dialogs.hpp>
//---------------------------------------------------------------------------

#define CTRLS_ID_BACKUP     1
#define CTRLS_ID_RESTORE    2
#define CTRLS_ID_RESTORE_NEW    4
#define CTRLS_ID_RESTORE_EXIST  5
#define CTRLS_ID_LOGIN      3

class TMainInstallForm : public TForm
{
__published:	// IDE-managed Components
        TLabel *lblTip;
        TLabel *lblTip2;
        TGroupBox *grpConnection;
        TLabel *lblServerName;
        TEdit *edtServerName;
        TLabel *lblUserName;
        TEdit *edtUserName;
        TShape *shpTip;
        TLabel *lblPassword;
        TEdit *edtPassword;
        TButton *btnTestConnection;
        TButton *btnCancel;
        TADOConnection *conDB;
        TADOCommand *cmdAttach;
    TPageControl *pgcBackupRestore;
    TTabSheet *tsBackup;
    TTabSheet *tsRestore;
    TButton *btnAttach;
    TLabel *lblBackupName;
    TComboBox *cbbDBList;
    TLabel *lblBackupTarget;
    TEdit *edtBackupTarget;
    TButton *btnBrowseBackupTarget;
    TButton *btnBackup;
    TImage *imgTip;
    TADODataSet *dsTemp;
    TcxShellBrowserDialog *dlgBrowsePath;
    TComboBox *cbbRestoreDBList;
    TLabel *lblMDF;
    TEdit *edtRestoreFile;
    TRadioButton *rbRestoreToExist;
    TRadioButton *rbRestoreToNew;
    TLabel *lblNewDBName;
    TEdit *edtNewDBName;
    TLabel *lblNewDBLoc;
    TEdit *edtNewDBLoc;
    TButton *btnBrowseRestoreDbFile;
    TButton *btnBrowseNewDBLoc;
    TSaveDialog *dlgSaveBackup;
    TOpenDialog *dlgOpenBackup;
        void __fastcall btnTestConnectionClick(TObject *Sender);
        void __fastcall btnCancelClick(TObject *Sender);
        void __fastcall FormShow(TObject *Sender);
    void __fastcall FormDestroy(TObject *Sender);
    void __fastcall btnBackupClick(TObject *Sender);
    void __fastcall btnBrowseBackupTargetClick(TObject *Sender);
    void __fastcall rbRestoreToExistClick(TObject *Sender);
    void __fastcall btnBrowseRestoreDbFileClick(TObject *Sender);
    void __fastcall btnBrowseNewDBLocClick(TObject *Sender);
    void __fastcall btnAttachClick(TObject *Sender);
    
private:	// User declarations
        AnsiString __fastcall GetConnString();
        void __fastcall EnableCtrls( bool en, int id );
        bool __fastcall RetriDatabases();

        bool __fastcall BackupDB( const String& dbName,
                                  const String& backFile );

        bool __fastcall RestoreDB( const String& dbName,
                                   const String& backFile,
                                   const String& newDBLoc = "" );
private:
        bool HasLogged;
        TStringList* DBNames;

public:		// User declarations
        __fastcall TMainInstallForm(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TMainInstallForm *MainInstallForm;
//---------------------------------------------------------------------------
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -