Compartir a través de


Método Folder.CopyHere

Copia un elemento o elementos en una carpeta.

Sintaxis

Folder.CopyHere(
  vItem,
  [ vOptions ]
)

Parámetros

vItem

Tipo: Variant

Elemento o elementos que se van a copiar. Puede ser una cadena que representa un nombre de archivo, un objeto FolderItem o un objeto FolderItems .

vOptions [opcional]

Tipo: Variant

Opciones para la operación de copia. Este valor puede ser cero o una combinación de los valores siguientes. Estos valores se basan en las marcas definidas para su uso con el miembro fFlags de la estructura SHFILEOPSTRUCT de C++. Cada espacio de nombres de Shell debe proporcionar su propia implementación de estas marcas y cada espacio de nombres puede optar por omitir algunas o incluso todas estas marcas. Estas marcas no se definen por nombre para Visual Basic, VBScript o JScript, por lo que debe definirlas usted mismo o usar sus equivalentes numéricos.

Nota

En algunos casos, como archivos comprimidos (.zip), algunas marcas de opción pueden omitirse por diseño.

 

(4)

No mostrar un cuadro de diálogo de progreso.

(8)

Asigne al archivo un nombre nuevo en una operación de movimiento, copia o cambio de nombre si ya existe un archivo con el nombre de destino.

(16)

Responda con "Sí a todo" para cualquier cuadro de diálogo que se muestre.

(64)

Conservar la información de deshacer, si es posible.

(128)

Realice la operación en los archivos solo si se especifica un nombre de archivo comodín (*.*).

(256)

Mostrar un cuadro de diálogo de progreso, pero no mostrar los nombres de archivo.

(512)

No confirme la creación de un directorio si la operación requiere que se cree una.

(1024)

No muestre una interfaz de usuario si se produce un error.

(2048)

Versión 4.71. No copie los atributos de seguridad del archivo.

(4096)

Solo funcionan en el directorio local. No funcione recursivamente en subdirectorios.

(8192)

Versión 5.0. No copie los archivos conectados como un grupo. Copie solo los archivos especificados.

Valor devuelto

Este método no devuelve ningún valor.

Comentarios

No se envía ninguna notificación al programa de llamada para indicar que la copia se ha completado.

Nota

No todos los métodos se implementan para todas las carpetas. Por ejemplo, el método ParseName no se implementa para la carpeta Panel de control (CSIDL_CONTROLS). Si intenta llamar a un método no implementado, se produce un error de 0x800A01BD (decimal 445).

 

Ejemplos

En el ejemplo siguiente se usa CopyHere para copiar el archivo Autoexec.bat del directorio raíz en el directorio C:\Windows. Se muestra un uso adecuado para JScript, VBScript y Visual Basic.

Jscript:

<script language="JScript">
    function fnCopyHereJ()
    {
        var objShell = new ActiveXObject("shell.application");
        var objFolder = new Object;
        
        objFolder = objShell.NameSpace("C:\\WINDOWS");
        if (objFolder != null)
        {
            objFolder.CopyHere("C:\\AUTOEXEC.BAT");
        }
    }
 </script>

Vbscript:

<script language="VBScript">
    function fnCopyHereVB()
        dim objShell
        dim objFolder
        
        set objShell = CreateObject("shell.application")
        set objFolder = objShell.NameSpace("C:\WINDOWS")
 
        if not objFolder is nothing then
            objFolder.CopyHere("C:\AUTOEXEC.BAT")
        end if
 
        set objShell = nothing
        set objFolder = nothing
    end function
</script>

Visual Basic:

Private Sub btnCopyHere_Click()
    Dim objShell  As Shell
    Dim objFolder As Folder
    
    Set objShell = New Shell
    Set objFolder = objShell.NameSpace("C:\WINDOWS")
 
    If (Not objFolder Is Nothing) Then
        objFolder.CopyHere ("C:\AUTOEXEC.BAT")
    End If
 
    Set objFolder = Nothing
    Set objShell = Nothing
End Sub

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional, Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Shldisp.h
IDL
Shldisp.idl
Archivo DLL
Shell32.dll (versión 4.71 o posterior)

Consulte también

Carpeta