다음을 통해 공유


Folder.MoveHere 메서드

항목 또는 항목을 이 폴더로 이동합니다.

구문

Folder.MoveHere(
  vItem,
  [ vOptions ]
)

매개 변수

vItem [in]

형식: Variant

이동할 항목입니다. 파일 이름, FolderItem 개체 또는 FolderItems 개체를 나타내는 문자열일 수 있습니다 .

vOptions [in, optional]

형식: Variant

이동 작업에 대한 옵션입니다. 이 값은 0이거나 다음 값의 조합일 수 있습니다. 이러한 값은 C++ SHFILEOPSTRUCT 구조체의 fFlags 멤버와 함께 사용하기 위해 정의된 플래그를 기반으로 합니다. 이러한 플래그는 Visual Basic, VBScript 또는 JScript와 같이 정의되지 않으므로 직접 정의하거나 해당 숫자와 동등한 플래그를 사용해야 합니다.

(4)

진행률 대화 상자를 표시하지 마세요.

(8)

대상 이름을 가진 파일이 이미 있는 경우 이동, 복사 또는 이름 바꾸기 작업에서 새 이름으로 작동하는 파일을 지정합니다.

(16)

표시되는 대화 상자에 대해 "모두 예"로 응답합니다.

(64)

가능한 경우 실행 취소 정보를 유지합니다.

(128)

와일드카드 파일 이름(*.*)이 지정된 경우에만 파일에 대한 작업을 수행합니다.

(256)

진행률 대화 상자를 표시하지만 파일 이름은 표시하지 않습니다.

(512)

작업에 새 디렉터리를 만들어야 하는 경우 새 디렉터리 만들기를 확인하지 마세요.

(1024)

오류가 발생하면 사용자 인터페이스를 표시하지 마세요.

(2048)

버전 4.71. 파일의 보안 특성을 복사하지 마세요.

(4096)

로컬 디렉터리에서만 작동합니다. 하위 디렉터리로 재귀적으로 작동하지 않습니다.

(9182)

버전 5.0. 연결된 파일을 그룹으로 이동하지 마세요. 지정된 파일만 이동합니다.

반환 값

이 메서드는 값을 반환하지 않습니다.

설명

참고

모든 폴더에 대해 모든 메서드가 구현되는 것은 아닙니다. 예를 들어 ParseName 메서드는 제어판 폴더(CSIDL_CONTROLS)에 대해 구현되지 않습니다. 구현되지 않은 메서드를 호출하려고 하면 0x800A01BD(10진수 445) 오류가 발생합니다.

 

예제

다음 예제에서는 MoveHere 를 사용하여 C 드라이브의 루트 디렉터리에서 C:\Windows 폴더로 파일 Temp.txt 이동합니다. 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 이상)