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이 값은 일반적으로 설치 시 애플리케이션 또는 하드웨어에서 추가됩니다. 데이터 값이 할당되지 않습니다.
요구 사항
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | shobjidl.h |
DLL | Shell32.dll |