C++调用WinRAR压缩解压文件

来源:互联网 发布:cocos2d js api 编辑:程序博客网 时间:2024/04/29 00:04

1、压缩:

CString aracmd = _T("a ")+strRarFile +_T(" ") +strMdbFile;

//strRarFile为压缩后rar文件的全路径,包括压缩后rar文件的文件名(除_、字母、数字外的其他字符不支持),但不要包括后缀名.rarstrMdbFile为带压缩的文件名。

//此命令中只有astrRarFilestrRarFilestrFileName两个之间有空格,strRarFilestrMdbFile路径中不能带有空格,否则会导致RAR不识别命令。

CString strWorkPath = strAppPath + _T("DataBase\\");

int nResult = 0;

nResult = (int)ShellExecute(NULL,_T("open"),strRarPath,aracmd,strWorkPath,SW_SHOWNORMAL);

//strRarPathRAR应用程序路径,aracmd为命令。

//strWorkPath为工作路径,这里用来指明带压缩文件的所在文件夹路径

//若想要后台运行,只要将SW_SHOWNORMAL改为SW_HIDE

 

2、解压:

CStringaracmd;

aracmd.Format("x %s%s",strPath,strDesPath);

//strPath为要解压的rar文件全路径(带.rar后缀),strDesPath为目的文件夹路径

intnResult =0;

nResult = (int)ShellExecute(NULL,"open",strRarPath,aracmd,NULL,SW_SHOWNORMAL);

//strRarPathRAR应用程序路径,aracmd为命令字符串

 

附:

ShellExecute返回值大于32表示调用RAR应用程序成功,小于等于32则表示失败。

原创粉丝点击