database autocreate winrar file with window plan-task

//function: database autocreate winrar file with window plan-task
//*.data file into *.rar
//filename:autorar.cpp
//anthor:chinayaosir
//winrar a command format
//winrar a <rarfilepath> <databasefilepath>
//tools:vc++6.0
//database autoback pls see

//my article Autobackup sybase DataBase(操作系统at指令+批处理文件+SQL文件+存储过程)


#include <tchar.h>
#include <io.h>
#include <time.h>

#include <iostream>
#include <windows.h>

int _tmain(int argc, _TCHAR* argv[])
{
    
    char sdate[255];  //save current date
    char db_filepath[255];//save database dat filepath
    char rar_filepath[255];  //save rar filepath
    char rar_command_str[255]; //save winrar command words

    STARTUPINFO si;
    PROCESS_INFORMATION pi;

    ZeroMemory( &si, sizeof(si) ); //create si
    si.cb = sizeof(si);
    ZeroMemory( &pi, sizeof(pi) ); //create pi

    _strdate(sdate); //today save into sdate with mm/dd/yy format
    strcpy(db_filepath,"f://auto_backup//G20"); //set db_filepath="f://auto_backup//G20"
    strncat(db_filepath,sdate+6,2);//add year into db_filepath with mm/dd/yy date
    strcat(db_filepath,"_");//add '_' char into db_filepath after yyyy
    //add month into db_filepath
    if (sdate[0]=='0')    
        strncat(db_filepath,sdate+1,1);
    else
        strncat(db_filepath,sdate,2);
    
    strcat(db_filepath,"_");//add '_' char into db_filepath after m/mm
    //add day into db_filepath
    if (sdate[3]=='0')
        strncat(db_filepath,sdate+4,1);
    else
        strncat(db_filepath,sdate+3,2);
    //set rar and db filepath with
    strcpy(rar_filepath,db_filepath);
    strcat(db_filepath,".dat");
    strcat(rar_filepath,".rar");
    //set winrar command string
    strcpy(rar_command_str,"winrar a ");
    strcat(rar_command_str,rar_filepath);
    strcat(rar_command_str," ");
    strcat(rar_command_str,db_filepath);

    CreateProcess
    ( NULL,                // No module name (use command line).
        rar_command_str,// Command line.
        NULL,           // Process handle not inheritable.
        NULL,           // Thread handle not inheritable.
        FALSE,          // Set handle inheritance to FALSE.
        0,              // No creation flags.
        NULL,           // Use parent's environment block.
        NULL,           // Use parent's starting directory.
        &si,            // Pointer to STARTUPINFO structure.
        &pi                // Pointer to PROCESS_INFORMATION structure.
    );             

    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值