Metodo Folder.CopyHere
Copia un elemento o elementi in una cartella.
Sintassi
Folder.CopyHere(
vItem,
[ vOptions ]
)
Parametri
-
vItem
-
Tipo: Variant
Elemento o elementi da copiare. Può trattarsi di una stringa che rappresenta un nome di file, un oggetto FolderItem o un oggetto FolderItems .
-
vOptions [facoltativo]
-
Tipo: Variant
Opzioni per l'operazione di copia. Questo valore può essere zero o una combinazione dei valori seguenti. Questi valori si basano sui flag definiti per l'uso con il membro fFlags della struttura SHFILEOPSTRUCT C++. Ogni spazio dei nomi shell deve fornire la propria implementazione di questi flag e ogni spazio dei nomi può scegliere di ignorare alcuni o anche tutti questi flag. Questi flag non sono definiti per nome per Visual Basic, VBScript o JScript, pertanto è necessario definirli manualmente o usare gli equivalenti numerici.
Nota
In alcuni casi, ad esempio file compressi (.zip), alcuni flag di opzione possono essere ignorati dalla progettazione.
-
(4)
-
Non visualizzare una finestra di dialogo di stato.
-
(8)
-
Assegnare al file un nuovo nome in un'operazione di spostamento, copia o ridenominazione se esiste già un file con il nome di destinazione.
-
(16)
-
Rispondere con "Sì a tutto" per qualsiasi finestra di dialogo visualizzata.
-
(64)
-
Conservare le informazioni di annullamento, se possibile.
-
(128)
-
Eseguire l'operazione sui file solo se viene specificato un nome di file con caratteri jolly (*.*).
-
(256)
-
Visualizzare una finestra di dialogo di stato ma non visualizzare i nomi dei file.
-
(512)
-
Non confermare la creazione di una nuova directory se è necessario crearne uno.
-
(1024)
-
Non visualizzare un'interfaccia utente se si verifica un errore.
-
(2048)
-
Versione 4.71. Non copiare gli attributi di sicurezza del file.
-
(4096)
-
Opera solo nella directory locale. Non operare in modo ricorsivo in sottodirectory.
-
(8192)
-
Versione 5.0. Non copiare i file connessi come gruppo. Copiare solo i file specificati.
Valore restituito
Questo metodo non restituisce valori.
Commenti
Non viene inviata alcuna notifica al programma chiamante per indicare che la copia è stata completata.
Nota
Non tutti i metodi vengono implementati per tutte le cartelle. Ad esempio, il metodo ParseName non viene implementato per la cartella Pannello di controllo (CSIDL_CONTROLS). Se si tenta di chiamare un metodo non implementato, viene generato un errore di 0x800A01BD (decimale 445).
Esempio
L'esempio seguente usa CopyHere per copiare il file Autoexec.bat dalla directory radice alla directory C:\Windows. Viene visualizzato un utilizzo appropriato per 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
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows 2000 Professional, Windows XP [solo app desktop] |
Server minimo supportato |
Windows 2000 Server [solo app desktop] |
Intestazione |
|
IDL |
|
DLL |
|
Vedi anche