Método copy de la clase Win32_Directory

El método copy de clase WMI copia el archivo de entrada de directorio lógico o directorio especificado en la ruta de acceso del objeto a la ubicación especificada por el parámetro de entrada. No se admite una copia si se requiere sobrescribir un archivo lógico existente.

En este tema se usa la sintaxis de Managed Object Format (MOF). Para obtener más información sobre el uso de este método, vea Llamar a un método.

Sintaxis

uint32 Copy(
   string FileName
);

Parámetros

FileName

Nombre completo de la copia del archivo (o directorio). Ejemplo: c:\temp\newdirectory

Valor devuelto

Devuelve un valor de 0 (cero) si el archivo se copió correctamente y cualquier otro número para indicar un error.

0

La solicitud fue correcta.

2

Se denegó el acceso.

8

Error no especificado.

9

El nombre especificado no era válido.

10

El objeto especificado ya existe.

11

El sistema de archivos no es NTFS.

12

La plataforma no es Windows.

13

La unidad no es la misma.

14

El directorio no está vacío.

15

Se ha producido una infracción de uso compartido.

16

El archivo de inicio especificado no era válido.

17

No se mantiene un privilegio necesario para la operación.

21

Un parámetro especificado no es válido.

Comentarios

Las carpetas a menudo deben copiarse de una ubicación a otra. Por ejemplo, puede copiar una carpeta de un servidor a otro para crear una copia de seguridad de esa carpeta. O bien, es posible que tenga una carpeta templates que deba copiarse en estaciones de trabajo de usuario o en una carpeta de scripts que se debe copiar en todos los servidores DNS.

El método copy de Win32_Directory permite copiar una carpeta de una ubicación a otra, ya sea en el mismo equipo (por ejemplo, copiar una carpeta de la unidad C a la unidad D) o en un equipo remoto. Para copiar una carpeta, se devuelve una instancia de la carpeta que se va a copiar y, a continuación, se llama al método Copy, pasando como parámetro la ubicación de destino de la nueva copia de la carpeta. Por ejemplo, esta línea de código copia una carpeta en la carpeta Scripts de la unidad F:

objFolder.Copy("F:\Scripts")

WMI no sobrescribirá una carpeta existente al ejecutar el método Copy. Esto significa que se produce un error en la operación de copia si existe la carpeta de destino. Por ejemplo, supongamos que tiene una carpeta denominada Scripts e intenta copiar esa carpeta en un recurso compartido remoto denominado \\atl-fs-01\archive. Si ya existe una carpeta denominada Scripts en ese recurso compartido, se produce un error en la operación de copia.

Ejemplos

En el ejemplo de código siguiente, tomado de La copia de una carpeta mediante WMI, se usa el método Copy para copiar la carpeta C:\Scripts en D:\Archive.

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.Copy("D:\Archive") 
Next

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista
Servidor mínimo compatible
Windows Server 2008
Espacio de nombres
Root\CIMV2
MOF
CIMWin32.mof
Archivo DLL
CIMWin32.dll

Consulte también

Clases de sistema operativo

Win32_Directory