Переименование метода класса Win32_Directory

Метод Переименоватькласс WMI переименовывает файл записи каталога, указанный в пути к объекту. Переименование не поддерживается, если назначение находится на другом диске или если требуется перезапись существующего логического файла.

В этом разделе используется синтаксис формата управляемого объекта (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 завершается ошибкой "Диск не то же самое".

Примеры

В следующем коде из примера Перемещение папки с помощью WMI VBScript в коллекции TechNet используется метод Rename для перемещения папки C:\Scripts в папку C:\Admins\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
Пространство имен
Root\CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll

См. также раздел

Классы операционной системы

Win32_Directory