亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? diskcleandlg.cpp

?? qingli一個系統整理程序
?? CPP
字號:
// DiskCleanDlg.cpp : implementation file
//

#include "stdafx.h"
#include "DiskClean.h"
#include "DiskCleanDlg.h"
//#include "SystemInfo.h"
//#include "DiskSerial.h"
#include <dos.h>
#include <direct.h>
//#include "Product.h"
#include "SelectFile.h"
#include <afxmt.h>

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

DWORD g_dWSel;

CDiskCleanDlg* gpMainWnd;
CString gPath,gPath1;
BOOL gbRuning=FALSE;

#define WM_MYEXIT WM_USER + 1
#define WM_ANSWER WM_USER + 2


UINT ThreadsProc(LPVOID pParam) ;

HANDLE ghThreadExitEvent;
	

void DealRabbishScan(CString path);
void DeleteRabbishFile(CString FilePath,CString FileName);
void DeleteZeroFile(CString path);
	

/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	virtual BOOL OnInitDialog();
	//{{AFX_MSG(CAboutDlg)
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDiskCleanDlg dialog

CDiskCleanDlg::CDiskCleanDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CDiskCleanDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDiskCleanDlg)
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

	m_nDrvCount=0;

	g_dWSel=0xFFFFFFFF;
	gpMainWnd=this;
	//
	//
	ghThreadExitEvent = CreateEvent(NULL, TRUE, FALSE, NULL);
		
}

void CDiskCleanDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDiskCleanDlg)
	DDX_Control(pDX, IDC_LIST2, m_ctlListFile1);
	DDX_Control(pDX, IDC_LIST1, m_ctlListFile);
	DDX_Control(pDX, IDC_COMBO_DRIVE, m_ctlComboDrive);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CDiskCleanDlg, CDialog)
	//{{AFX_MSG_MAP(CDiskCleanDlg)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	ON_BN_CLICKED(IDC_SELECT, OnSelect)
	ON_BN_CLICKED(ID_APP_ABOUT, OnAppAbout)
	ON_BN_CLICKED(IDC_START, OnStart)
	ON_BN_CLICKED(IDC_STOP, OnStop)
	//}}AFX_MSG_MAP
	ON_MESSAGE(WM_MYEXIT,OnExit)  
	ON_MESSAGE(WM_ANSWER,OnAnswer)  
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDiskCleanDlg message handlers

BOOL CDiskCleanDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Add "About..." menu item to system menu.

	// IDM_ABOUTBOX must be in the system command range.
	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
	ASSERT(IDM_ABOUTBOX < 0xF000);

	CMenu* pSysMenu = GetSystemMenu(FALSE);
	if (pSysMenu != NULL)
	{
		CString strAboutMenu;
		strAboutMenu.LoadString(IDS_ABOUTBOX);
		if (!strAboutMenu.IsEmpty())
		{
			pSysMenu->AppendMenu(MF_SEPARATOR);
			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
		}
	}

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon
	
	// TODO: Add extra initialization here

	GetSysDriver();
	m_ctlComboDrive.SetCurSel(0);	
	//for(int i=0;i<26;i++)
	//
	return TRUE;  // return TRUE  unless you set the focus to a control
}

void CDiskCleanDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
	{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
	}
	else
	{
		CDialog::OnSysCommand(nID, lParam);
	}
}

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CDiskCleanDlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // device context for painting

		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

		// Center icon in client rectangle
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;

		// Draw the icon
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.
HCURSOR CDiskCleanDlg::OnQueryDragIcon()
{
	return (HCURSOR) m_hIcon;
}

//得到硬盤驅動器盤符
void CDiskCleanDlg::GetSysDriver()
{
	UINT drvType=0;
	CString drv;
	char ch;
	for(ch='C';drvType!=1;ch++){
		drv="X:\\";
		drv.SetAt(0,ch);
		drvType=GetDriveType(drv);
		if(drvType==DRIVE_FIXED){
			m_ctlComboDrive.AddString(drv);

		}
	}
}

//垃圾文件掃描
void DealRabbishScan(CString path)
{
	if(!gbRuning)return;
	chdir(path);				//更換當前目錄
	gPath1=path;
	::SendMessage(gpMainWnd->m_hWnd ,WM_ANSWER, (WPARAM)2, (LPARAM)0);
	if(g_dWSel & 0x1)DeleteRabbishFile(path,"*.~*");
	if(g_dWSel & 0x2)DeleteRabbishFile(path,"*.ALT");
	if(g_dWSel & 0x4)DeleteRabbishFile(path,"*.FIX");
	if(g_dWSel & 0x8)DeleteRabbishFile(path,"*.PRV");
	if(g_dWSel & 0x10)DeleteRabbishFile(path,"*.SYD");
	if(g_dWSel & 0x20)DeleteRabbishFile(path,"*.$$$");
	if(g_dWSel & 0x40)DeleteRabbishFile(path,"*.CLN");
	if(g_dWSel & 0x80)DeleteRabbishFile(path,"*.GID");
	if(g_dWSel & 0x100)DeleteRabbishFile(path,"*.SAV");
	if(g_dWSel & 0x200)DeleteRabbishFile(path,"*.tmp");
	if(g_dWSel & 0x400)DeleteRabbishFile(path,"*.?~?");
	if(g_dWSel & 0x800)DeleteRabbishFile(path,"*.CYP");
	if(g_dWSel & 0x1000)DeleteRabbishFile(path,"*.LOO");
	if(g_dWSel & 0x2000)DeleteRabbishFile(path,"*.SCO");
	if(g_dWSel & 0x4000)DeleteRabbishFile(path,"*.UMB");
	if(g_dWSel & 0x8000)DeleteRabbishFile(path,"*.B?K");
	if(g_dWSel & 0x10000)DeleteRabbishFile(path,"*.ERR");
	if(g_dWSel & 0x20000)DeleteRabbishFile(path,"*.OLD");
	if(g_dWSel & 0x40000)DeleteRabbishFile(path,"*.SLK");
	if(g_dWSel & 0x80000)DeleteRabbishFile(path,"*.UBK");
	if(g_dWSel & 0x100000)DeleteRabbishFile(path,"*.00?");
	if(g_dWSel & 0x200000)DeleteRabbishFile(path,"*.ffa");
	if(g_dWSel & 0x400000)DeleteRabbishFile(path,"*.ffo");
	if(g_dWSel & 0x800000)DeleteRabbishFile(path,"*.ffl");
	if(g_dWSel & 0x1000000)DeleteRabbishFile(path,"*.T");
	if(g_dWSel & 0x2000000)DeleteRabbishFile(path,"*.ffx");
	//刪除單個文件
	if(g_dWSel & 0x4000000)DeleteRabbishFile(path,"desktop.ini");
	if(g_dWSel & 0x8000000)DeleteRabbishFile(path,"folder.htt");
	//
	DeleteZeroFile(path);
	BOOL flag;
	CFileFind m_File;
	DWORD dwRes;
	flag=m_File.FindFile(NULL);
	while(flag && gbRuning){
		dwRes=WaitForSingleObject(ghThreadExitEvent,0);
		if(dwRes==WAIT_OBJECT_0){
			gbRuning=FALSE;
			break;
		}
		flag=m_File.FindNextFile();
		if(m_File.IsDirectory()){
			if(!m_File.IsDots()){					
				path=m_File.GetFilePath();	
				//DeleteZeroFile(path);		
				DealRabbishScan(path);		
			}
		}
	}
	

	
}


//刪除垃圾文件
void DeleteRabbishFile(CString FilePath,CString FileName)
{
	//((CListBox*)gpMainWnd->GetDlgItem(IDC_LIST1))->AddString(FilePath);
	CFileFind findfile;
	CString tFileName;
	CString Path;
	LV_ITEM lvitem;
	lvitem.mask  = LVIF_TEXT;
	//
	SetCurrentDirectory(FilePath) ;
	if(findfile.FindFile(FileName)){
		while(findfile.FindNextFile()){
			Path=findfile.GetFilePath();
			gPath=Path;
			tFileName = findfile.GetFileName();
			DeleteFile(tFileName);
			::SendMessage(gpMainWnd->m_hWnd ,WM_ANSWER, (WPARAM)1, (LPARAM)0);
		}
		Path=findfile.GetFilePath();
		gPath=Path;
		tFileName = findfile.GetFileName();
		DeleteFile(tFileName);
		::SendMessage(gpMainWnd->m_hWnd ,WM_ANSWER, (WPARAM)1, (LPARAM)0);
	}
}


//處理零字節文件
void DeleteZeroFile(CString path)
{
	//chdir(path);
	CString Path;
	//SetCurrentDirectory(path);
	CString ZeroFilename;
	CFileFind finder;
	BOOL bWorking=finder.FindFile("*.*");
	while(bWorking){
		bWorking=finder.FindNextFile();
		if(!finder.IsDirectory()){
			if(finder.GetLength()==0){
				Path=finder.GetFilePath();
				gPath=Path;
				::SendMessage(gpMainWnd->m_hWnd ,WM_ANSWER, (WPARAM)1, (LPARAM)0);
				ZeroFilename=(LPCTSTR)finder.GetFileName();
				DeleteFile(ZeroFilename);
			}
		}
	}
}


BOOL CAboutDlg::OnInitDialog()
{
	CDialog::OnInitDialog();	
	//
	return TRUE;	

}


void CDiskCleanDlg::OnSelect() 
{
	CSelectFile dlg;
	dlg.m_dWSel=g_dWSel;
	if(dlg.DoModal()==IDOK)g_dWSel=dlg.m_dWSel;
}

void CDiskCleanDlg::OnAppAbout() 
{
	CAboutDlg dlg;
	dlg.DoModal();
}



UINT ThreadsProc(LPVOID pParam) 
{
	CString path;
	//
	CComboBox* pComboBox=(CComboBox*)gpMainWnd->GetDlgItem(IDC_COMBO_DRIVE);
	pComboBox->GetLBText(pComboBox->GetCurSel(),path);
	//
	DealRabbishScan(path);		//清除該目錄的垃圾文件
	//DeleteZeroFile(path);		//清除該目錄下長度為零的文件
	//
	if(gbRuning)::SendMessage(gpMainWnd->m_hWnd ,WM_MYEXIT, (WPARAM)0, (LPARAM)0);
	return 0;
}

LRESULT CDiskCleanDlg::OnExit(WPARAM wParam, LPARAM lParam)
{
	
	
	AfxMessageBox("處理完畢!",MB_OK |MB_ICONINFORMATION   );	
	//
	GetDlgItem(IDC_START)->EnableWindow(TRUE);	
	GetDlgItem(IDC_STOP)->EnableWindow(FALSE);	
	gbRuning=FALSE;
	//
	return 0;
}

LRESULT CDiskCleanDlg::OnAnswer(WPARAM wParam, LPARAM lParam)
{
	int nSel;
	int count;
	//
	nSel=(int)wParam;
	if(nSel==1){
		//count=m_ctlListFile.GetCount();
		//if(count>=5)m_ctlListFile.DeleteString(0);
		m_nFileNum++;
		CString str;
		str.Format("處理文件數: %d",m_nFileNum) ;
		GetDlgItem(IDC_STATICFILENUM)->SetWindowText(str);
		//
		m_ctlListFile.AddString(gPath);
	
	}
	else {
		m_nDirNum++;
		CString str;
		str.Format("檢查目錄數: %d",m_nDirNum) ;
		GetDlgItem(IDC_STATICDIRNUM)->SetWindowText(str);
		//
		count=m_ctlListFile1.GetCount();
		if(count>=5)m_ctlListFile1.DeleteString(0);
		m_ctlListFile1.AddString(gPath1);
		
	}
	
	return 0;
}


/*BOOL CDiskCleanDlg::DestroyWindow() 
{
	delete ghThreadExitEvent;
	//
	return CDialog::DestroyWindow();
}*/

void CDiskCleanDlg::OnStart() 
{
	GetDlgItem(IDC_START)->EnableWindow(FALSE);
	GetDlgItem(IDC_STOP)->EnableWindow(TRUE);
	//
	gbRuning=TRUE;
	m_nFileNum=0;
	CString str;
	str.Format("處理文件數: %d",m_nFileNum) ;
	GetDlgItem(IDC_STATICFILENUM)->SetWindowText(str);
	//
	m_nDirNum=0;
	str.Format("檢查目錄數: %d",m_nDirNum) ;
	GetDlgItem(IDC_STATICDIRNUM)->SetWindowText(str);
	//
	m_ctlListFile.ResetContent();
	m_ctlListFile1.ResetContent();
	//
	ResetEvent(ghThreadExitEvent);	
	m_pThread=AfxBeginThread(&ThreadsProc, 
					(LPVOID)NULL, THREAD_PRIORITY_NORMAL);
	
	
}

void CDiskCleanDlg::OnStop() 
{
	GetDlgItem(IDC_START)->EnableWindow(TRUE);
	GetDlgItem(IDC_STOP)->EnableWindow(FALSE);
	//
	SetEvent(ghThreadExitEvent);	
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
青青草97国产精品免费观看无弹窗版| 亚洲精品你懂的| 精品一区二区三区免费观看| 欧美日韩一级视频| 亚洲精品免费在线观看| 欧美性色综合网| 日本va欧美va欧美va精品| 日韩免费视频一区| 成人v精品蜜桃久久一区| 国产精品三级av| 制服丝袜亚洲色图| 中文一区二区完整视频在线观看| 日韩欧美国产麻豆| 亚洲线精品一区二区三区 | 五月综合激情日本mⅴ| 岛国av在线一区| 精品国产免费一区二区三区香蕉 | 精品一区二区影视| 欧美男生操女生| 一区二区高清视频在线观看| 国产91丝袜在线观看| 日韩一级欧美一级| 日韩影视精彩在线| 欧美日韩国产一区二区三区地区| 最新不卡av在线| av在线播放一区二区三区| 丁香啪啪综合成人亚洲小说 | 免费一级欧美片在线观看| 99久久久国产精品| 欧美影视一区在线| 肉肉av福利一精品导航| 久久国产综合精品| 精品国产青草久久久久福利| 狠狠网亚洲精品| 久久你懂得1024| 国产在线精品一区二区夜色| 久久不见久久见免费视频7| 欧美韩日一区二区三区四区| 亚洲成av人片| ...xxx性欧美| 亚洲午夜一二三区视频| 一区二区免费在线| 亚洲最大色网站| 偷拍与自拍一区| 免费国产亚洲视频| 亚洲午夜免费福利视频| 奇米影视一区二区三区| 亚洲主播在线播放| av不卡免费电影| 亚洲人被黑人高潮完整版| 在线观看免费亚洲| 69成人精品免费视频| 看电影不卡的网站| 91精品福利在线一区二区三区| 日韩高清在线电影| 欧美主播一区二区三区美女| 亚洲在线视频网站| av亚洲精华国产精华精| 亚洲美女视频在线观看| 成av人片一区二区| 午夜精品一区在线观看| 欧美喷水一区二区| 国产精品综合视频| 国产亚洲精品超碰| 在线观看成人小视频| 亚洲精品成a人| 欧美xxxxx裸体时装秀| 精品亚洲国产成人av制服丝袜| 日本一区二区成人在线| 在线观看亚洲成人| 国产福利电影一区二区三区| 综合婷婷亚洲小说| 日韩欧美精品三级| 成人激情动漫在线观看| 视频一区视频二区中文| 久久一二三国产| 欧美片在线播放| 国产激情一区二区三区| 日韩电影在线一区二区三区| 久久久久久久综合狠狠综合| 欧美三级午夜理伦三级中视频| 久久精品国内一区二区三区| 亚洲一区在线播放| 久久综合色之久久综合| 在线播放亚洲一区| 国产激情一区二区三区四区| 蜜桃av一区二区在线观看| 中文字幕中文字幕在线一区| 欧美草草影院在线视频| 91麻豆国产香蕉久久精品| 国产福利精品一区| 亚洲va欧美va人人爽| 亚洲人成亚洲人成在线观看图片| 91精品视频网| 欧美精品在线一区二区| 国产在线不卡一区| 男男成人高潮片免费网站| 综合分类小说区另类春色亚洲小说欧美| 久久综合九色综合欧美98| 欧美伊人久久大香线蕉综合69| 国产91丝袜在线播放九色| 免费看日韩精品| 日韩高清在线观看| 亚洲一区二区三区四区五区黄| 国产精品女人毛片| www久久精品| 久久影院午夜片一区| 欧美日韩国产欧美日美国产精品| 色综合天天综合网国产成人综合天| 91精品欧美福利在线观看| 天堂一区二区在线| 一区二区成人在线视频 | 国产精品电影院| 91福利精品第一导航| 日本成人超碰在线观看| 国产日产欧产精品推荐色| 成人h动漫精品| 日韩高清在线一区| 欧美久久一二区| 大尺度一区二区| 精品亚洲porn| 成人亚洲精品久久久久软件| 国产伦精品一区二区三区在线观看 | 蜜桃视频在线观看一区| 亚洲成人免费av| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲乱码精品一二三四区日韩在线| 亚洲人吸女人奶水| 亚洲欧洲性图库| 亚洲一区二区影院| 亚洲成人av电影在线| 日韩av一级电影| 亚洲一区免费在线观看| 亚洲成av人片在线观看| 亚洲青青青在线视频| 亚洲影视资源网| 欧美日韩久久一区| 欧美不卡123| 亚洲欧洲成人精品av97| 亚洲免费在线电影| 日本午夜精品视频在线观看| 老司机午夜精品99久久| 成人综合在线视频| 91麻豆123| 日韩一区国产二区欧美三区| 亚洲精品在线免费观看视频| 国产精品夫妻自拍| 一区二区三区欧美| 麻豆精品一区二区综合av| 国产激情一区二区三区| 色老汉av一区二区三区| 91精品中文字幕一区二区三区| 国产欧美精品在线观看| 国产精品色哟哟网站| 天天综合天天综合色| 丁香天五香天堂综合| 欧美手机在线视频| 国产日韩一级二级三级| 亚洲第一在线综合网站| 国产主播一区二区| 91丨porny丨最新| 久久久久久久久久久久久久久99 | 《视频一区视频二区| 五月天中文字幕一区二区| 成人综合婷婷国产精品久久蜜臀| 国产日产精品一区| 亚洲伦理在线精品| 欧美日韩激情在线| 黄色日韩网站视频| 成人app下载| 精品日韩一区二区三区| 久久先锋资源网| 一区二区在线观看视频| 麻豆国产欧美一区二区三区| 成人国产亚洲欧美成人综合网| 91麻豆文化传媒在线观看| 日韩女优视频免费观看| 2024国产精品| 国产一区二区不卡老阿姨| 精品国产伦一区二区三区观看体验 | xfplay精品久久| 亚洲成人av免费| 波波电影院一区二区三区| 日韩免费高清av| 国产精品不卡一区二区三区| 国产精品18久久久久| 91论坛在线播放| 国产人久久人人人人爽| 久久超碰97中文字幕| 欧美美女bb生活片| 蜜臀久久99精品久久久画质超高清 | 老司机一区二区| 在线观看亚洲专区| 亚洲综合视频网| 国产精品中文有码| 久久婷婷久久一区二区三区| 亚洲视频小说图片| www..com久久爱| 亚洲色图欧美激情| 风间由美中文字幕在线看视频国产欧美 |