问题描述:
我想要用VB删除 C:\Documents and Settings\All Users\「开始」菜单\程序\启动\文件夹中的所有文件。
但我用以下两个命令都无法删除,请问这段代码该如何写:
Kill ("C:\Documents and Settings\All Users\「开始」菜单\程序\启动\*.*")
Shell "cmd.exe /c del /f /q C:\Documents and Settings\All Users\「开始」菜单\程序\启动\*.*", 0
另外想用VB支不支持windows中的环境变量,如果不支持,该如何调用。答出后一题,再追加30分。
解析:
Kill语句不用括号。
Kill "C:\Documents and Settings\All Users\「开始」菜单\程序\启隐岁动\*.*" 即可达到目的,我刚试槐携梁过。可以的。
但注意只能删除文件,文件夹不能被删除。
http://hi.baidu.com/icecept/blog/item/85d1d9453d7dfd38869473ab.html 用API一次删除、移动、复制、改名含有文件及子目录的文件夹2008-11-17 19:06'**************************************************************************'**模 块名:工程1 - Form1'**说 明:魔灵圣域 版权所有2008 - 2009(C) by icecept(魔灵)'**创 建人:icecept(魔灵)'**日 期:2008-11-18 01:10:06'**修 改人:icecept(魔灵)'**日 期:'**描 述:icecept(魔灵)制作'**版 本:V1.0.0 http://icecept.blog.sohu.com '*************************************************************************Option Explicit'用API一次删除、移动、复制、改名含有文件及子目录的文件夹Private Const FO_MOVE = &H1 '移动Private Const FO_COPY = &H2 '复制Private Const FO_DELETE = &H3 '删除Private Const FO_RENAME = &H4 '改名Private Const FOF_NOCONFIRMATION = &H10 '没有提示Private Const FOF_SILENT = &H4Private Const FOF_NOERRORUI = &H400Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As LongPrivate Type SHFILEOPSTRUCT hwnd As Long '句柄 wFunc As Long ' *** 作命令 pFrom As String '源文件夹 pTo As String '目标文件夹 fFlags As Integer ' fAnyOperationsAborted As Long hNameMappings As Long lpszProgressTitle As String ' 当取 FOF_SIMPLEPROGRESS 时,此参数才被使用End TypePrivate Function PathOperate(ByVal FormPath As String, ByVal ToPath As String, ByVal sOrder As String) As Boolean On Error Resume Next Dim udtPath As SHFILEOPSTRUCT udtPath.hwnd = 0 udtPath.wFunc = sOrder udtPath.pFrom = FormPath udtPath.pTo = ToPath udtPath.fFlags = FOF_NOCONFIRMATION Or FOF_SILENT Or FOF_NOERRORUI PathOperate = Not CBool(SHFileOperation(udtPath))End FunctionPrivate Sub Command1_Click() '一次移动含有文件的目录或文件夹 '把c盘文件夹a及其其中的文件夹及目录移动到d盘的文件夹e中谨者 PathOperate "c:\a", "d:\e", FO_MOVEEnd SubPrivate Sub Command2_Click() '一次移动含有文件的目录或文件夹 '把c盘文件夹a及其中的文件夹及目录复制到d盘的文件夹败纳e中 PathOperate "c:\a", "d:\e", FO_COPYEnd SubPrivate Sub Command3_Click() '一次删除含有文件的目录或文件夹 '把c盘文件夹a中的文件夹及祥枯薯目录移动到d盘的文件夹e中 PathOperate "c:\a", vbNullString, FO_DELETEEnd SubPrivate Sub Command4_Click() '对含有子文件夹的目录改名 '把c盘文件夹a及其其中的文件夹及目录到d盘的文件夹e中 PathOperate "c:\a", "c:\e", FO_RENAMEEnd Sub附件: 一次删除、复制、移动文件夹.rar直接调用DOS命令:shell "cmd /C del /Q e:\aa\*.*" ,vbhide
本语句使用了/Q参数,del命令的其他颤码升参数为:
/P 删除每一个文件之前提示确认。
/F 强制删茄老除只读文件。
/S 从所有子目录删除指定文件。
/Q 安静模式。删除全局通配符时模枯,不要求确认。
/A 根据属性选择要删除的文件。
用KILL,不能删除文件夹,只能删除文件:
kill "D:\aa\*.*"
2、
d="D:\aa\"
f=dir(d &"*.*")
do while f<>""
kill d &f
f=dir
loop
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)