真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

518抽獎軟件源碼之:刪除文件夾及下面的所有文件

518抽獎軟件源碼之:刪除文件夾及下面的所有文件

在開發(fā)“518抽獎軟件”的時候,每次導(dǎo)入一批新圖片的時候,要刪除原來的圖片文件夾。 本來遞歸刪除即可,應(yīng)該很快速的,但是在windows 10下發(fā)現(xiàn)刪除很慢,軟件會卡在那里,因為windows 10的安全性,里面很多智能的檢查。 軟件卡在那里總不行的,只能rename文件夾后,創(chuàng)建一個線程慢慢刪除那個文件夾,請參看下面源碼。

十多年的溧陽網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。成都全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整溧陽建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)公司從事“溧陽網(wǎng)站設(shè)計”,“溧陽網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。

Windows 10 下刪除文件夾及里面的文件源碼



void Tfuns::del_folder (const WCHAR* folder)
{
	if (*folder == 0) return; //!!

	WCHAR suffix[64] = { 0 };
	WCHAR tmpFolder[MAX_PATH] = { 0 };
	int len = wcslen(folder);

	//rename后的臨時文件夾的名字
	int seqno = 1;
GET_TMPFOLDER:
	wcscpy(tmpFolder, folder);
	if (tmpFolder[len - 1] == L'\\' || tmpFolder[len - 1] == L'/')
		tmpFolder[len - 1] = 0;
	swprintf(suffix, L"_toDel%d", seqno);
	wcscat(tmpFolder, suffix);
	if (PathFileExists(tmpFolder)) {
		seqno++;
		goto GET_TMPFOLDER;
	}

	if (_wrename(folder, tmpFolder) == 0)
	{
		wstring* p = new wstring(tmpFolder); //!! 必須的,線程傳遞參數(shù)
		HANDLE h = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)Thread_delFolderW, (LPVOID)p, 0, 0);
		CloseHandle(h);
	}
}

static DWORD WINAPI Thread_delFolderW(LPVOID lpParameter)
{
	SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_BELOW_NORMAL);
	setlocale(LC_ALL, "");
	recursive_del(((wstring*)lpParameter)->c_str());
	delete ((wstring*)lpParameter);
	return 0;
}

static void recursive_del(const WCHAR* folder)
{
	WCHAR srch[MAX_PATH] = { 0 };
	WIN32_FIND_DATA wfd = { 0 };
	PathCombine(srch, folder, L"*.*");
	HANDLE h = FindFirstFile(srch, &wfd);
	if (h == INVALID_HANDLE_VALUE)
		return;

	while (1)
	{
		WCHAR file[MAX_PATH] = { 0 };
		PathCombine(file, folder, wfd.cFileName);

		if (wcscmp(wfd.cFileName, L".") == 0) { ; }
		else if (wcscmp(wfd.cFileName, L"..") == 0) { ; }
		else if (PathIsDirectory(file)) recursive_del(file);
		else {
			SetFileAttributes(file, FILE_ATTRIBUTE_NORMAL);
			DeleteFile(file);
		}

		if (!FindNextFile(h, &wfd)) break;
	}
	FindClose(h);

	SetFileAttributes(folder, FILE_ATTRIBUTE_NORMAL);
	RemoveDirectory(folder);
}



當(dāng)前文章:518抽獎軟件源碼之:刪除文件夾及下面的所有文件
網(wǎng)頁URL:http://weahome.cn/article/pdhice.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部