重新命名Win32_Directory類別的方法
RenameWMI 類別方法會重新命名物件路徑中指定的目錄項目檔案。 如果目的地位於另一個磁碟驅動器上,或需要覆寫現有的邏輯檔案,則不支援重新命名。
本主題使用Managed物件格式 (MOF) 語法。 如需使用此方法的詳細資訊,請參閱 呼叫方法。
語法
uint32 Rename(
string FileName
);
參數
-
FileName
-
檔案的完整新名稱(或目錄)。 範例:c:\temp\newfile.txt。
傳回值
如果已成功重新命名檔案,則傳回值為 0(零),以及任何其他數位,指出錯誤。
-
0
-
要求成功。
-
2
-
拒絕存取。
-
8
-
發生未指定的失敗。
-
9
-
指定的名稱無效。
-
10
-
指定的物件已經存在。
-
11
-
檔案系統不是 NTFS。
-
12
-
平臺不是 Windows。
-
13
-
磁碟驅動器不相同。
-
14
-
目錄不是空的。
-
15
-
發生共享違規。
-
16
-
指定的啟動檔案無效。
-
17
-
作業所需的許可權不會保留。
-
21
-
指定的參數無效。
備註
若要重新命名資料夾,請先系結至有問題的資料夾,然後呼叫 Rename 方法。 做為 方法的唯一參數,將資料夾的新名稱傳遞為完整路徑名稱。 例如,如果 C:\Scripts\Logs\Backup 中的資料夾要重新命名為 C:\Scripts\Archive,您必須傳遞 C:\Scripts\Archive 做為完整文件夾名稱。 僅傳遞資料夾名稱 - 封存 - 會導致路徑錯誤無效。
Win32_Directory 類別不提供行動資料夾的單步驟方法。 相反地,移動資料夾通常牽涉到兩個步驟:
- 1.將資料夾複製到其新位置 2。刪除原始資料夾
這個雙步驟程式的其中一個例外狀況是將資料夾移至相同磁碟驅動器上的新位置。 例如,假設您想要將 C:\Temp 移至 C:\Scripts\Temporary Files\Archive。 只要目前的位置和新位置位於相同的磁碟驅動器上,只要呼叫 Rename 方法並將新位置傳遞為方法參數,即可移動資料夾。 這種方法實際上可讓您在單一步驟中移動資料夾。 不過,如果目前的磁碟驅動器和新磁碟驅動器不同,腳本就會失敗。 嘗試將 C:\Temp 重新命名為 D:\Temp 失敗,並出現「磁碟驅動器不相同」錯誤。
範例
下列程式代碼會使用 Rename 方法,將 C:\Scripts 資料夾移至 C:\管理員 s\Documents\Archive\VBScript。
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.Rename("C:\Admins\Documents\Archive\VBScript")
Next
需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows Vista |
最低支援的伺服器 |
Windows Server 2008 |
Namespace |
Root\CIMV2 |
MOF |
|
DLL |
|