为什么此C程序填充驱动器C:\?

时间:2019-05-08 22:57:06

标签: compression c winrar

下面的代码是压缩一些的C程序。他们正在共享文件夹,有些大约有6G。但是C:/驱动器目前只有4G可用空间,每次运行脚本时都会加载它,我相信这是由于临时文件引起的。

但是我已经将Winrar中的临时文件文件夹更改为“选项”>“设置”>“路径”>临时文件文件夹:“ E:\ temp”。

可能会发生什么?看,代码基本上就是这样(一些代码片段,您只需在其中更改要压缩的目录,然后将其删除以进行汇总即可):

#include <iostream>
#include <ctime>
#include <stdio.h>
#include <string.h>
#include <cstdlib>

using namespace std;

int main(){

    char comando [150]={""};

    char ano [3];
    char mes [3];
    char dia[3];
    char data[15] ={""};
    char pasta[15] = {""};
    char *Pont_Pasta = pasta;

    unsigned long tempo_Espera = 100000;

    time_t t = time(0);
    struct tm * now = localtime (& t);
    sprintf(ano,"%i",now->tm_year+1900);
    sprintf(mes,"%i",now->tm_mon+1);
    sprintf(dia,"%i",now->tm_mday);

    strcat(data,"_");
    strcat(data,ano);
    strcat(data,"_");
    strcat(data,mes);
    strcat(data,"_");
    strcat(data,dia);

 strcat(comando,"start c:\\arquiv~1\\winrar\\rar a E:\\backup\\aquisicao\\aquisicao");strcat(comando,data);strcat(comando,".rar E:\\aquisicao");
    system(comando);
    strcpy(comando,"");
    _sleep(tempo_Espera);

 (...)

 return 0;    
}

1 个答案:

答案 0 :(得分:1)

C程序调用的命令行RAR.EXE不使用WinRAR.EXE GUI程序中的临时文件设置。
您需要使用命令行参数为RAR.EXE指定临时文件夹。
我没有WinRAR的副本,但可以使用“ RAR -h”或“ RAR-?”。应该为您提供使用哪个参数的信息。