Win32_Directory 类的 Delete 方法
DeleteWMI 类方法将删除对象路径中指定的逻辑文件 (或目录) 。
本主题使用托管对象格式 (MOF) 语法。 有关使用此方法的详细信息,请参阅 调用方法。
语法
uint32 Delete();
参数
此方法没有任何参数。
返回值
如果成功删除文件,则返回值 0 (零) ,以及指示错误的任何其他数字。
-
0
-
请求已成功。
-
2
-
访问被拒绝。
-
8
-
发生了未指定的故障。
-
9
-
指定的名称无效。
-
10
-
指定的对象已存在。
-
11
-
文件系统不是 NTFS。
-
12
-
平台不是 Windows。
-
13
-
驱动器不同。
-
14
-
目录不为空。
-
15
-
存在共享冲突。
-
16
-
指定的启动文件无效。
-
17
-
不保留操作所需的特权。
-
21
-
指定的参数无效。
备注
文件夹不一定是文件系统的永久添加项。 在某些时候,可能需要删除文件夹,可能是因为不再需要文件夹、计算机的角色已更改,或者文件夹是错误创建的。
Delete 允许您删除文件夹:只需绑定到有问题的文件夹,然后调用 Delete 方法。 调用 Delete 方法后,将从文件系统中永久删除该文件夹;它不会发送到回收站。 此外,没有确认通知 (“是否确实要删除此文件夹?”发出) 。 而是会立即删除该文件夹。
不能使用 FileSystemObject 删除只读文件夹;但是,可以使用 WMI 完成此操作。 如果脚本使用 WMI 并且您不想删除只读文件夹,则必须使用 Readable 属性检查文件夹状态,然后再将其删除。
示例
以下 VBScript 代码示例删除文件夹 C:\Scripts。
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery _
("SELECT * FROM Win32_Directory WHERE Name = 'c:\\Scripts'")
For Each objFolder in colFolders
errResults = objFolder.Delete
Wscript.Echo errResults
Next
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista |
最低受支持的服务器 |
Windows Server 2008 |
命名空间 |
Root\CIMV2 |
MOF |
|
DLL |
|