vc删除文件夹
① c\c++怎样删除文件夹
第一种方法
1.SHFileOperation
SHFILEOPSTRUCT FileOp;
ZeroMemory((void*)&FileOp,sizeof(SHFILEOPSTRUCT));
FileOp.fFlags = FOF_SILENT|FOF_NOCONFIRMATION;
FileOp.hNameMappings = NULL;
FileOp.hwnd = NULL;
FileOp.lpszProgressTitle = NULL;
FileOp.pFrom = lpszPath;
FileOp.pTo = NULL;
FileOp.wFunc = FO_DELETE;
SHFileOperation(&FileOp);
如果加了FOF_SILENT标志,那么在函数调用的时候,即使出错,也不会弹框提示,但是,今天发现,如果这个目录是共享的,依然还是会弹框提示。不知道是不是一个Bug呢?
2.CFileFind
bool DeleteDirectory(char* strDirName)
{
CFileFind tempFind;
char strTempFileFind[MAX_PATH];
sprintf(strTempFileFind,"%s\\*.*", strDirName);
BOOL IsFinded = tempFind.FindFile(strTempFileFind);
while (IsFinded)
{
IsFinded = tempFind.FindNextFile();
if (!tempFind.IsDots())
{
char strFoundFileName[MAX_PATH];
strcpy(strFoundFileName, tempFind.GetFileName().GetBuffer(MAX_PATH));
if (tempFind.IsDirectory())
{
char strTempDir[MAX_PATH];
sprintf(strTempDir,"%s\\%s", strDirName, strFoundFileName);
DeleteDirectory(strTempDir);
}
else
{
char strTempFileName[MAX_PATH];
sprintf(strTempFileName,"%s\\%s", strDirName, strFoundFileName);
DeleteFile(sTempFileName);
}
}
}
tempFind.Close();
if(!RemoveDirectory(strDirName))
{
return FALSE;
}
return TRUE;
}
这个主要通过递归的方法,依次删除文件,直到目录为空,删除目录、文件夹。
第二种
//这是用vc的方法:
bool MyDeleteFile(char * lpszPath)
{
SHFILEOPSTRUCT FileOp={0};
FileOp.fFlags = FOF_ALLOWUNDO | //允许放回回收站
FOF_NOCONFIRMATION; //不出现确认对话框
FileOp.pFrom = lpszPath;
FileOp.pTo = NULL; //一定要是NULL
FileOp.wFunc = FO_DELETE; //删除操作
return SHFileOperation(&FileOp) == 0;
}
void MyDialog::OnButton3()
{
// MyDeleteFile("d:\\PID\0\0"); //删除一个文件夹
MyDeleteFile("d:\\PID.dsp\0d:\\PID.dsw\0\0"); //删除多个文件
}
void MyDialog::OnButton3()
{
// MyDeleteFile("d:\\PID\0\0"); //删除一个文件夹
MyDeleteFile("d:\\PID.dsp\0d:\\PID.dsw\0\0"); //删除多个文件
}
② vc怎么把工程中多余的文件删除
删除文件:直接选中该文件,然后按Del
加文件:先把要加的文件放到工程所在的文件夹,然后再要添加的位置(Source
Files或Header
Files
右击,选Add
files
to
Folder...),选择要添加的文件即可
③ VC红色文件可以删除吗
VC_RED是windows更新错误时的备份文件,其实是可以手动删除的。
vc_red.msi, 通常为VC++ 可再发行组件包(安装在未安装VisualC++ 相应版本的计算机上运行使用VisualC++ 指定版本开发的应用程序所需的VisualC++ 库的运行时组件(Visual C++ Redistributable Packages)在安装时解压的临时文件,由于安装成功、失败等其他原因后,安装程序没有及时清理,导致残留的文件,可以放心手动删除。

(3)vc删除文件夹扩展阅读:
快速手动清除临时文件:
打开“资源管理器”或者“我的电脑”,然后在地址栏中输入“%temp%”,并回车,即可打开这个文件夹,回车后可以看到这个文件夹的具体位置。选中其中的文件,按Del可以将这些文件放入回收站。如果按Shift+Del,则可以将文件彻底从硬盘中删除。
单击“开始,运行”,然后在“运行”对话框中输入“%temp%”,也能够打开临时文件夹。
通常而言,这个文件夹中的所有文件都可以放心地删除。有时,一些文件正在使用而不能删除,可以重新启动计算机后立即删除它们。
或者,可以用360安全卫士等清理垃圾/痕迹。
参考资料:网络-临时文件
④ VC MFC 如何删除文件,目录,文件夹
仅供参考:
bool DeleteDirectory( char* DirName)
{
HANDLE hFirstFile = NULL;
WIN32_FIND_DATA FindData;
char currdir[MAX_PATH] = {0};
sprintf(currdir, "%s\\*.*", DirName);
hFirstFile = ::FindFirstFile(currdir, &FindData);
if( hFirstFile == INVALID_HANDLE_VALUE )
return false;
BOOL bRes = true;
while(bRes)
{
bRes = ::FindNextFile(hFirstFile, &FindData);
if( (FindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) ) //发现目录
{
if( !strcmp(FindData.cFileName, ".") || !strcmp(FindData.cFileName, "..") ) //.或..
continue;
else
{
char tmppath[MAX_PATH] = {0};
sprintf(tmppath, "%s\\%s", DirName, FindData.cFileName);
DeleteDirectory(tmppath);
}
}
else //发现文件
{
char tmppath[MAX_PATH] = {0};
sprintf(tmppath, "%s\\%s", DirName, FindData.cFileName);
::DeleteFile(tmppath);
}
}
::FindClose(hFirstFile);
if(!RemoveDirectory(DirName))
{
return false ;
}
return true;
}
⑤ 用vc6.0 c语言怎么删除文件包括子文件
你是说把文件夹里面的子文件删掉吧。
其实用C语言可以很容易的做到这些,用“windows.h“头文件下的system()方法就可以啦,那个命令是直接写入DOC里面的,这是用VC通过DOC的间接操作,很容易的。
⑥ VC如何删除文件夹
void CDlltestDlg::OnOK()
{
// TODO: Add extra validation here
SHFILEOPSTRUCT FileOp;
FileOp.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOERRORUI;//设定标志:不显示提示对话框
FileOp.pFrom = "C:\\aaa";//要删除的目录名,相对的,绝对的都可以
FileOp.wFunc = FO_DELETE;//指定操作为删除
SHFileOperation(&FileOp);//开始调用Shell的文件操作...
}
如果缺少头文件,请#include <Shellapi.h>
⑦ 用VC6.0编写的c程序后,生成的Debug文件夹如何删除
你只要把正在调试的exe程序窗口关闭就可以删除了
如果还不行可以试试装个unlocker,下载地址:
http://www.onlinedown.net/soft/24732.htm
⑧ ftp命令中有没有删除文件夹,包括该文件夹下的文件一起删除的命令(VC)
命令 描述
ABOR 中断数据连接程序
ACCT <account> 系统特权帐号
ALLO <bytes> 为服务器上的文件存储器分配字节
APPE <filename> 添加文件到服务器同名文件
CDUP <dir path> 改变服务器上的父目录
CWD <dir path> 改变服务器上的工作目录
DELE <filename> 删除服务器上的指定文件
HELP <command> 返回指定命令信息
LIST <name> 如果是文件名列出文件信息,如果是目录则列出文件列表
MODE <mode> 传输模式(S=流模式,B=块模式,C=压缩模式)
MKD <directory> 在服务器上建立指定目录
NLST <directory> 列出指定目录内容
NOOP 无动作,除了来自服务器上的承认
PASS <password> 系统登录密码
PASV 请求服务器等待数据连接
PORT <address> IP 地址和两字节的端口 ID
PWD 显示当前工作目录
QUIT 从 FTP 服务器上退出登录
REIN 重新初始化登录状态连接
REST <offset> 由特定偏移量重启文件传递
RETR <filename> 从服务器上找回(复制)文件
RMD <directory> 在服务器上删除指定目录
RNFR <old path> 对旧路径重命名
RNTO <new path> 对新路径重命名
SITE <params> 由服务器提供的站点特殊参数
SMNT <pathname> 挂载指定文件结构
STAT <directory> 在当前程序或目录上返回信息
STOR <filename> 储存(复制)文件到服务器上
STOU <filename> 储存文件到服务器名称上
STRU <type> 数据结构(F=文件,R=记录,P=页面)
SYST 返回服务器使用的操作系统
TYPE <data type> 数据类型(A=ASCII,E=EBCDIC,I=binary)
USER <username>> 系统登录的用户名
这就是FTP协议的命令集,是有删除指令的,我们老师以前让我们自己对照着自己编写过FTP协议,删除文件时候不分文件或者文件夹的,只要路径正确就可以删除,跟你电脑上点右键删除东西一样,如果是文件夹,内部所有也都会删除的。
⑨ 请问,C++/VC怎么清理(删除)一个目录下所有的空文件夹
参考代码,这里的函数可将一个目录及其子目录中的所有空文件夹删除,程序已测试过,建议使用前自己认真测试一下。
注意:代码造成的误删操作与本人无关。
/////////////////////////////////////////////////////
使用方法:
char dir[] = "d:\\test\\";
DeleteEmptyDirectories(dir);
/////////////////////////////////////////////////////
void DeleteEmptyDirectories(const char *dir)
{
WIN32_FIND_DATA finder;
HANDLE hFileFind;
char search[MAX_PATH];
strcpy(search, dir);
strcat(search, "*.*");
hFileFind = FindFirstFile(search, &finder);
if (hFileFind != INVALID_HANDLE_VALUE)
{
do
{
char path[MAX_PATH];
strcpy(path, dir);
strcat(path, finder.cFileName);
if ((finder.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
&& strcmp(finder.cFileName, ".")
&& strcmp(finder.cFileName, ".."))
{
char subdir[MAX_PATH];
strcpy(subdir, path);
strcat(subdir, "\\");
DeleteEmptyDirectories(subdir);
// AfxMessageBox(subdir);
RemoveDirectory(path);
}
} while (FindNextFile(hFileFind, &finder) != 0);
FindClose(hFileFind);
}
}
⑩ vc6.0 工程中FileView里的文件怎么删除
在VC6.0中的FileView(文件试图)点击右键是没有或移除删除文件的这一项的
你可以直接先单击鼠标左键选中要删除的文件,按键盘上的Delete键就OK 【酷_酷_币】为您服务...
