다음을 통해 공유


IQueryCancelAutoPlay::AllowAutoPlay 메서드(shobjidl.h)

사용자가 삽입한 미디어를 재생할지 여부와 어떤 제한을 사용하는지 여부를 결정합니다.

구문

HRESULT AllowAutoPlay(
  [in] LPCWSTR pszPath,
  [in] DWORD   dwContentType,
  [in] LPCWSTR pszLabel,
  [in] DWORD   dwSerialNumber
);

매개 변수

[in] pszPath

형식: LPCWSTR

D:\ 형식의 드라이브 문자

[in] dwContentType

형식:DWORD

다음 플래그에 지정된 콘텐츠 형식입니다.

ARCONTENT_AUTORUNINF(0x00000002)

Autorun.inf 파일을 사용합니다. 이는 기존의 자동 실행 동작입니다.

ARCONTENT_AUDIOCD(0x00000004)

오디오 CD 자동 실행.

ARCONTENT_DVDMOVIE(0x00000008)

DVD 자동 실행.

ARCONTENT_BLANKCD(0x00000010)

빈 CD-Rs 및 CD-RW를 자동으로 실행합니다.

ARCONTENT_BLANKDVD(0x00000020)

빈 DVD-Rs 및 DVD-RAM을 자동으로 실행합니다.

ARCONTENT_UNKNOWNCONTENT(0x00000040)

미디어의 형식이 지정되고 콘텐츠가 다른 플래그 중 하나가 적용되는 형식에 속하지 않는 경우 자동 실행합니다.

ARCONTENT_AUTOPLAYPIX(0x00000080)

콘텐츠가 그림으로 정의된 파일 형식(예: .bmp 및 .jpg 파일)으로 구성된 경우 자동 실행

ARCONTENT_AUTOPLAYMUSIC(0x00000100)

콘텐츠가 음악으로 정의된 파일 형식(예: MP3 파일)으로 구성된 경우 자동 실행.

ARCONTENT_AUTOPLAYVIDEO(0x00000200)

콘텐츠가 비디오 파일로 정의된 파일 형식으로 구성된 경우 자동 실행.

ARCONTENT_VCD(0x00000400)

Windows Vista에 도입되었습니다. VCD(비디오 CD)를 자동 실행합니다.

ARCONTENT_SVCD(0x00000800)

Windows Vista에 도입되었습니다. SVCD(슈퍼 비디오 CD) 미디어를 자동 실행합니다.

ARCONTENT_DVDAUDIO(0x00001000)

Windows Vista에 도입되었습니다. DVD-Audio 미디어를 자동 실행합니다.

ARCONTENT_BLANKBD(0x00002000)

블루레이 디스크™ 형식(BD-R 또는 BD-RW)으로 기록 가능한 빈 고화질 DVD 미디어를 자동 실행합니다. 참고: Windows 7 이전에는 이 값이 HD DVD 형식으로 기록할 수 없는 미디어를 지정하도록 정의되었습니다.

ARCONTENT_BLURAY(0x00004000)

Windows Vista에 도입되었습니다. 블루레이 디스크™ 형식으로 고화질 DVD 미디어를 자동 실행합니다.

ARCONTENT_CAMERASTORAGE(0x00008000)

Windows 8에 도입되었습니다.

ARCONTENT_CUSTOMEVENT(0x00010000)

Windows 8에 도입되었습니다.

ARCONTENT_NONE(0x00000000)

Windows Vista에 도입되었습니다. 비어 있지만 서식이 지정된 미디어를 자동 실행합니다.

ARCONTENT_MASK(0x0001FFFE)

Windows Vista에 도입되었습니다. 미디어 형식에 유효한 ARCONTENT 플래그 값을 나타내는 마스크입니다. 이 마스크에는 ARCONTENT_PHASE 값이 포함되지 않습니다.

ARCONTENT_PHASE_UNKNOWN(0x00000000)

Windows Vista에 도입되었습니다. 자동 실행이 미디어를 검색하고 있습니다. 검색 단계(프리스니프, 스니핑 또는 최종)는 알 수 없습니다.

ARCONTENT_PHASE_PRESNIFF(0x10000000)

Windows Vista에 도입되었습니다. 미디어 유형으로 인해 미디어를 검색하기 전에 미디어의 내용을 알 수 있습니다. instance, 오디오 CD 및 DVD 영화용입니다.

ARCONTENT_PHASE_SNIFFING(0x20000000)

Windows Vista에 도입되었습니다. 자동 실행은 현재 미디어를 검색하고 있습니다. 이 단계에서 보고된 모든 결과는 더 많은 콘텐츠 형식이 여전히 발견될 수 있으므로 부분 목록으로 간주되어야 합니다.

ARCONTENT_PHASE_FINAL(0x40000000)

Windows Vista에 도입되었습니다. 자동 실행이 미디어 검색을 완료했습니다. 보고된 결과는 최종 결과입니다.

ARCONTENT_PHASE_MASK(0x70000000)

Windows Vista에 도입되었습니다. 유효한 ARCONTENT_PHASE 값을 나타내는 마스크입니다.

[in] pszLabel

형식: LPCWSTR

미디어 레이블입니다.

[in] dwSerialNumber

형식:DWORD

미디어 일련 번호입니다.

반환 값

형식: HRESULT

자동 실행 또는 S_FALSE 자동 실행을 취소할 수 있도록 S_OK 반환합니다.

설명

애플리케이션은 실행 중인 ROT(개체 테이블)에 IQueryCancelAutoPlay 인터페이스의 instance 등록합니다. 셸이 자동 실행 또는 자동 실행을 시작하기 전에 사용자가 새 미디어를 삽입할 때 IQueryCancelAutoPlay를 구현하는 구성 요소에 대해 ROT를 확인합니다. 이 메서드를 찾으면 셸은 해당 구현의 IQueryCancelAutoPlay::AllowAutoPlay 메서드를 호출하여 진행 여부를 결정하고 어떤 제한을 사용해야 하는지 결정합니다.

미디어가 표시되면 Shell은 ROT에서 IQueryCancelAutoPlay를 구현하는 구성 요소를 검색합니다. 이 모니커가 발견되면 해당 구성 요소의 모니커의 CLSID(클래스 식별자)가 추출됩니다. ROT 등록이 있으면 구성 요소가 자동 실행 또는 자동 실행을 취소할 수 있음을 셸에 알릴 수 있습니다. 확인을 위해 셸은 다음 위치에서 동일한 CLSID에 대한 레지스트리 키도 찾아야 합니다.

HKEY_LOCAL_MACHINE
   SOFTWARE
      Microsoft
         Windows
            Current Version
               Explorer
                  AutoplayHandlers
                     CancelAutoplay
                        CLSID
                           The component's CLSID
이 값은 일반적으로 설치 시 애플리케이션 또는 하드웨어에서 추가됩니다. 데이터 값이 할당되지 않습니다.
참고 이 키 아래에 값으로 입력한 CLSID는 중괄호로 묶지 않아야 합니다.
 

요구 사항

   
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 shobjidl.h
DLL Shell32.dll