Поделиться через


Метод Folder.MoveHere

Перемещает элемент или элементы в эту папку.

Синтаксис

Folder.MoveHere(
  vItem,
  [ vOptions ]
)

Параметры

vItem [in]

Тип: Variant

Перемещаемый элемент или элементы. Это может быть строка, представляющая имя файла, объект FolderItem или объект FolderItems .

vOptions [в, необязательно]

Тип: Variant

Параметры для операции перемещения. Это значение может быть нулевым или сочетанием следующих значений. Эти значения основаны на флагах, определенных для использования с членом fFlags структуры C++ SHFILEOPSTRUCT . Эти флаги не определены как таковые для Visual Basic, VBScript или JScript, поэтому их необходимо определить самостоятельно или использовать их числовые эквиваленты.

(4)

Диалоговое окно хода выполнения не отображается.

(8)

Присвойте файлу новое имя в операции перемещения, копирования или переименования, если файл с целевым именем уже существует.

(16)

Ответьте "Да всем" для любого отображаемого диалогового окна.

(64)

По возможности сохраните сведения об отмене.

(128)

Выполнять операцию с файлами только в том случае, если указано имя файла с подстановочными знаками (*.*).

(256)

Отображает диалоговое окно хода выполнения, но не отображает имена файлов.

(512)

Не подтверждать создание нового каталога, если операция требует его создания.

(1024)

Не отображать пользовательский интерфейс при возникновении ошибки.

(2048)

Версия 4.71. Не копируйте атрибуты безопасности файла.

(4096)

Работать только в локальном каталоге. Не следует рекурсивно работать в подкаталогах.

(9182)

Версия 5.0. Не перемещайте подключенные файлы в группу. Перемещайте только указанные файлы.

Возвращаемое значение

Этот метод не возвращает значение.

Комментарии

Примечание

Не все методы реализуются для всех папок. Например, метод ParseName не реализован для папки панель управления (CSIDL_CONTROLS). При попытке вызвать нереализованный метод возникает ошибка 0x800A01BD (десятичное число 445).

 

Примеры

В следующем примере используется метод MoveHere для перемещения файла Temp.txt из корневого каталога диска C в папку C:\Windows. Для JScript, VBScript и Visual Basic отображается правильное использование.

Jscript:

<script language="JScript">
    var FOF_NOCONFIRMATION = 16;

    function fnFolderObjectMoveHereJ()
    {
        var objShell  = new ActiveXObject("shell.application");
        var objFolder = new Object;
        
        objFolder = objShell.NameSpace("C:\\WINDOWS");
        if (objFolder != null)
        {
            objFolder.MoveHere ("C:\\temp.txt", FOF_NOCONFIRMATION);
        }
    }
</script>

Vbscript:

<script language="VBScript">
    private const FOF_NOCONFIRMATION = 16
    
    function fnFolderObjectMoveHereVB()
        dim objShell
        dim objFolder

        set objShell = CreateObject("shell.application")
        set objFolder = objShell.NameSpace("C:\WINDOWS")

        if (not objFolder is nothing) then
            objFolder.MoveHere "C:\temp.txt", FOF_NOCONFIRMATION
        end if

        set objFolder = nothing
        set objShell = nothing
    end function
</script>

Visual Basic:

Private Const FOF_NOCONFIRMATION = &H10

Private Sub btnMoveHere_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.MoveHere "c:\temp.txt", FOF_NOCONFIRMATION
    End If

    Set objFolder = Nothing
    Set objShell = Nothing
End Sub

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional, Windows XP [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Shldisp.h
IDL
Shldisp.idl
DLL
Shell32.dll (версия 4.71 или более поздняя)