VS 2008 创建、删除多级目录的方法 以及给文件夹增加隐藏属性

stdafx.h

#include <ImageHlp.h>
#pragma comment(lib,"imagehlp.lib")


//源文件中
//创建多级目录树

char* DirectoryType = "c:\\123\\123\\123\\"
MakeSureDirectoryPathExists(DirectoryType);


增加隐藏属性

CString str(DirectoryType);
SetFileAttributes(DirectoryType,FILE_ATTRIBUTE_HIDDEN);


//删除多级目录树

BOOL DeleteDirectory(char *DirName)
{
	CFileFind tempFind;
	char tempFileFind[200];
	sprintf_s(tempFileFind,"%s\\*.*",DirName);
	USES_CONVERSION;
	BOOL IsFinded=(BOOL)tempFind.FindFile(A2T(tempFileFind));
	while(IsFinded)
	{
		IsFinded=(BOOL)tempFind.FindNextFile();
		if(!tempFind.IsDots())
		{
			char foundFileName[200];
			// strcpy(foundFileName,tempFind.GetFileName().GetBuffer(200));
			if(!WideCharToMultiByte(CP_ACP,0,tempFind.GetFileName(),-1,foundFileName,200,NULL,NULL))
			{
				return false;
			}
			if(tempFind.IsDirectory())
			{
				char tempDir[200];
				sprintf_s(tempDir,"%s\\%s",DirName,foundFileName);
				DeleteDirectory(tempDir);
			}
			else
			{
				char tempFileName[200];
				sprintf_s(tempFileName,"%s\\%s",DirName,foundFileName);
				DeleteFile(A2T(tempFileName));
			}
		}
	}
	tempFind.Close();
	if(!RemoveDirectory(A2T(DirName)))
	{
		//MessageBox("删除目录失败!","警告信息",MB_OK);
		return FALSE;
	}

	return TRUE;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值