Compartilhar via


Método Folder.CopyHere

Copia um item ou itens para uma pasta.

Sintaxe

Folder.CopyHere(
  vItem,
  [ vOptions ]
)

Parâmetros

Vitem

Tipo: Variant

O item ou os itens a serem copiados. Pode ser uma cadeia de caracteres que representa um nome de arquivo, um objeto FolderItem ou um objeto FolderItems .

vOptions [opcional]

Tipo: Variant

Opções para a operação de cópia. Esse valor pode ser zero ou uma combinação dos valores a seguir. Esses valores são baseados em sinalizadores definidos para uso com o membro fFlags da estrutura SHFILEOPSTRUCT do C++. Cada namespace do Shell deve fornecer sua própria implementação desses sinalizadores e cada namespace pode optar por ignorar alguns ou até mesmo todos esses sinalizadores. Esses sinalizadores não são definidos por nome para Visual Basic, VBScript ou JScript, portanto, você deve defini-los por conta própria ou usar seus equivalentes numéricos.

Observação

Em alguns casos, como arquivos compactados (.zip), alguns sinalizadores de opção podem ser ignorados por design.

 

(4)

Não exiba uma caixa de diálogo de progresso.

(8)

Forneça o arquivo que está sendo operado em um novo nome em uma operação de movimentação, cópia ou renomeação se já existir um arquivo com o nome de destino.

(16)

Responda com "Sim para Todos" para qualquer caixa de diálogo exibida.

(64)

Preservar informações de desfazer, se possível.

(128)

Execute a operação em arquivos somente se um nome de arquivo curinga (*.*) for especificado.

(256)

Exibe uma caixa de diálogo de progresso, mas não mostra os nomes de arquivo.

(512)

Não confirme a criação de um novo diretório se a operação exigir que um seja criado.

(1024)

Não exiba uma interface do usuário se ocorrer um erro.

(2048)

Versão 4.71. Não copie os atributos de segurança do arquivo.

(4096)

Operar somente no diretório local. Não opere recursivamente em subdiretórios.

(8192)

Versão 5.0. Não copie arquivos conectados como um grupo. Copie apenas os arquivos especificados.

Valor retornado

Esse método não retorna um valor.

Comentários

Nenhuma notificação é dada ao programa de chamada para indicar que a cópia foi concluída.

Observação

Nem todos os métodos são implementados para todas as pastas. Por exemplo, o método ParseName não é implementado para a pasta Painel de Controle (CSIDL_CONTROLS). Se você tentar chamar um método não implementado, um erro de 0x800A01BD (decimal 445) será gerado.

 

Exemplos

O exemplo a seguir usa CopyHere para copiar o arquivo Autoexec.bat do diretório raiz para o diretório C:\Windows. O uso adequado é mostrado para JScript, VBScript e 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 Valor
Cliente mínimo com suporte
Windows 2000 Professional, Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Shldisp.h
IDL
Shldisp.idl
DLL
Shell32.dll (versão 4.71 ou posterior)

Confira também

Pasta