共用方式為


Folder.CopyHere 方法

將專案或專案複製到資料夾。

語法

Folder.CopyHere(
  vItem,
  [ vOptions ]
)

參數

vItem

類型: Variant

要複製的專案或專案。 這可以是代表檔案名、 FolderItem 物件或 FolderItems 物件的字串。

vOptions [選擇性]

類型: Variant

複製作業的選項。 此值可以是零或下列值的組合。 這些值是以定義來搭配 C++ SHFILEOPSTRUCT結構的fFlags成員使用的旗標為基礎。 每個 Shell 命名空間都必須提供自己的這些旗標實作,而且每個命名空間可以選擇忽略部分或甚至全部的旗標。 這些旗標不是以 Visual Basic、VBScript 或 JScript 的名稱來定義,因此您必須自行定義旗標或使用其數值對等專案。

注意

在某些情況下,例如壓縮的 (.zip) 檔案,某些選項旗標可能會被設計忽略。

 

(4)

不要顯示進度對話方塊。

(8)

如果已經有目標名稱的檔案存在,請在移動、複製或重新命名作業中提供正在操作的新名稱。

(16)

針對顯示的任何對話方塊,以 「是全部」回應。

(64)

盡可能保留復原資訊。

(128)

只有在指定萬用字元檔案名 (*.*) 時,才會對檔案執行作業。

(256)

顯示進度對話方塊,但不會顯示檔案名。

(512)

如果作業需要建立目錄,請勿確認建立新目錄。

(1024)

如果發生錯誤,請勿顯示使用者介面。

(2048)

4.71 版。 請勿複製檔案的安全性屬性。

(4096)

只在本機目錄中運作。 請勿以遞迴方式操作子目錄。

(8192)

5.0 版。 請勿將連接的檔案複製為群組。 只複製指定的檔案。

傳回值

這個方法不會傳回值。

備註

呼叫程式沒有通知,表示複本已完成。

注意

並非所有方法都會針對所有資料夾實作。 例如,ParseName方法不會針對主控台資料夾實作 (CSIDL_CONTROLS) 。 如果您嘗試呼叫未實作的方法,就會引發十進位 445) 錯誤0x800A01BD (。

 

範例

下列範例使用 CopyHere 將Autoexec.bat檔案從根目錄複寫到 C:\Windows 目錄。 JScript、VBScript 和 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

規格需求

需求
最低支援的用戶端
Windows 2000 專業版、Windows XP [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限傳統型應用程式]
標頭
Shldisp.h
Idl
Shldisp.idl
DLL
Shell32.dll (4.71 版或更新版本)

另請參閱

資料夾