vs工程清理小工具

2021-10-05 20:17:34 字數 1695 閱讀 4234

通常我們在傳輸vs工程的時候,有很多不必要的檔案可以清理,通常這些檔案占用的空間可能還比較大,遠超工程**檔案的大小,於是寫了這個小工具,方便清理工程,支援多個過程同時清理,拖拽到介面上即可。

核心**如下:

void cvsprojectcleanerdlg::onbnclickedok()

else

}//開始逐個處理

std::string sitems = cmfcstrfile::cstring2string(stritems);

std::vectorvdirs = cstdstr::split(sitems, "|");

size_t ndirnum = vdirs.size();

for (size_t i = 0; i < ndirnum; ++i)

//1.首先檢查根目錄下是否存在.sln檔案

std::vectorvslnfiles;

if (getfiles(scurdir, vslnfiles, "*.sln") == 0)

//2.刪除根目錄下的所有指定型別的檔案

const std::vector& vrootdirs = _conf.vrootdirnames;

const size_t nrootnum = vrootdirs.size();

for (size_t j = 0; j < nrootnum; ++j)

}//3.刪除目錄下所有指定的資料夾

const std::vector& valldirnames = _conf.valldirnames;

std::vectorvalldirs;

getdirs(scurdir, valldirs);

const size_t nalldirnum = valldirs.size();

for (size_t j = 0; j < nalldirnum; ++j)

}//4.刪除目錄下所有指定的字尾的檔案

const std::vector& vallsuffixs = _conf.vallsuffixs;

const size_t nallsuffixsnum = vallsuffixs.size();

for (size_t j = 0; j < nallsuffixsnum; ++j)

}//5.刪除目錄下的所有空檔案

std::vectorvcheckblankdirs, vfilestmp;

getdirs(scurdir, vcheckblankdirs);

const size_t& ncheckblankdirnum = vcheckblankdirs.size();

for (size_t j = 0; j < ncheckblankdirnum; ++j)

}} writeinitofile(getinipath(), _conf);

afxmessagebox(ids_process_over);

cdialogex::onok();

}

其中,子目錄以及字尾的預設引數為:

typedef struct _config_s 

}config_s;

歡迎交流與分享。

日誌清理小工具的開發

為了方便配置,日誌的原有路徑和備份路徑等配置我們定義在propies檔案中,然後通過spring的註解value來獲取 日誌清理配置 original.log.path data logs sspapi job log.back.path data logs sspapi job back back...

flex開發 框架 vs 小工具

經過最近半年的專案實踐,我一直在思考,框架 vs 小工具兩種開發方式。雖然目前專案用了parsley框架,但目前我在慢慢淡化其作用。更多的通過一些小的通用工具在組織整個專案。用ui框架來裝配介面。用乙個簡單serviceutils來與server端通訊。用乙個通用可配置的 查詢 分頁顯示介面 來做查...

小工具 tree工具

wangyetao linux u1604 tree l 1 bin boot cdrom dev etc home initrd.img boot initrd.img 4.4.0 116 generic initrd.img.old boot initrd.img 4.4.0 112 gener...