IVdsOpenVDisk::Attach 메서드(vds.h)

[Windows 8 및 Windows Server 2012 가상 디스크 서비스 COM 인터페이스는 Windows Storage 관리 API로 대체됩니다.]

가상 디스크를 연결합니다.

구문

HRESULT Attach(
  [in]  LPWSTR                   pStringSecurityDescriptor,
  [in]  ATTACH_VIRTUAL_DISK_FLAG Flags,
  [in]  ULONG                    ProviderSpecificFlags,
  [in]  ULONG                    TimeoutInMs,
  [out] IVdsAsync                **ppAsync
);

매개 변수

[in] pStringSecurityDescriptor

가상 디스크에 대한 보안 설명자를 포함하는 문자열입니다. 지정하지 않으면 사용 중인 보안 설명자는 "D:P(A;; 조지아;;; Windows 7의 WD)" 및 "D:P(A;; 조지아;;; WD)(A;; 조지아;;; AC)" Windows 8.1 이상.

[in] Flags

가상 디스크를 연결할 방법을 지정하는 ATTACH_VIRTUAL_DISK_FLAG 열거형 값의 비트 마스크입니다. 가능한 값은 다음과 같습니다.

의미
ATTACH_VIRTUAL_DISK_FLAG_NONE
0x00000000
플래그가 지정되지 않았습니다.
ATTACH_VIRTUAL_DISK_FLAG_READ_ONLY
0x00000001
가상 디스크를 읽기 전용으로 연결합니다.
ATTACH_VIRTUAL_DISK_FLAG_NO_DRIVE_LETTER
0x00000002
드라이브 문자를 할당하지 않고 연결된 가상 디스크의 모든 볼륨을 탑재합니다.
ATTACH_VIRTUAL_DISK_FLAG_PERMANENT_LIFETIME
0x00000004
VDS 서비스는 IVdsOpenVDisk::D etach 메서드를 호출하여 분리할 때까지 VHD가 연결된 상태로 유지되도록 이 플래그를 자동으로 설정합니다.
ATTACH_VIRTUAL_DISK_FLAG_NO_LOCAL_HOST
0x00000008
예약되어 있습니다. 사용하지 마십시오.

[in] ProviderSpecificFlags

연결된 가상 디스크 유형과 관련된 플래그의 비트 마스크입니다. 이러한 플래그는 공급자에 따라 다릅니다. Microsoft 가상 디스크 공급자의 경우 이 매개 변수는 0이어야 합니다.

[in] TimeoutInMs

이 매개 변수는 나중에 사용하도록 예약되어 있습니다.

[out] ppAsync

성공적으로 완료되면 IVdsAsync 인터페이스를 수신하여 이 작업을 모니터링하고 제어하는 IVdsAsync 인터페이스에 대한 포인터입니다. 호출자는 수신된 인터페이스를 완료했을 때 해제해야 합니다. 인터페이스에서 IVdsAsync::Wait 메서드가 호출되고 성공 HRESULT 값이 반환되는 경우 각 인터페이스 포인터에서 IUnknown::Release 메서드를 호출하여 VDS_ASYNC_OUTPUT 구조에 반환된 인터페이스를 해제해야 합니다. 그러나 Wait가 오류 HRESULT 값을 반환하거나 WaitpHrResult 매개 변수가 오류 HRESULT 값을 수신하는 경우 VDS_ASYNC_OUTPUT 구조의 인터페이스 포인터는 NULL이며 해제할 필요가 없습니다. Winerror.h에 정의된 SUCCEEDED 및 FAILED 매크로를 사용하여 성공 또는 실패 HRESULT 값을 테스트할 수 있습니다.

반환 값

이 메서드는 E_INVALIDARG 또는 E_OUTOFMEMORY 같은 표준 HRESULT 값과 VDS별 반환 값을 반환할 수 있습니다. HRESULT_FROM_WIN32 매크로를 사용하여 변환된 시스템 오류 코드를 반환할 수도 있습니다. 오류는 VDS 자체 또는 사용 중인 기본 VDS 공급자 에서 발생할 수 있습니다. 가능한 반환 값은 다음과 같습니다.

반환 코드 Description
S_OK
메서드가 완료되었습니다.

설명

가상 디스크가 연결되면 호출자는 다음 알림 중 하나 또는 전부를 수신할 수 있습니다.

애플리케이션은 CoInitializeSecurity 함수를 호출하여 프로세스 전체 보안을 초기화해야 합니다. dwImpLevel 매개 변수는 RPC_C_IMP_LEVEL_IMPERSONATE 설정해야 합니다.

Windows Server 2008, Windows Vista 및 Windows Server 2003: 이러한 작업은 Windows 7 및 Windows Server 2008 R2까지 필요하지 않습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 vds.h
라이브러리 Uuid.lib

추가 정보

IVdsOpenVDisk