Bagikan melalui


IQueryCancelAutoPlay::Metode AllowAutoPlay (shobjidl.h)

Menentukan apakah akan memutar media yang disisipkan oleh pengguna dan jika demikian menggunakan batasan apa.

Sintaks

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

Parameter

[in] pszPath

Jenis: LPCWSTR

Huruf kandar dalam bentuk D:\

[in] dwContentType

Jenis: DWORD

Jenis konten seperti yang ditentukan oleh bendera berikut.

ARCONTENT_AUTORUNINF (0x00000002)

Gunakan file Autorun.inf. Ini adalah perilaku AutoRun tradisional.

ARCONTENT_AUDIOCD (0x00000004)

Jalankan otomatis CD audio.

ARCONTENT_DVDMOVIE (0x00000008)

Jalankan Otomatis DVD.

ARCONTENT_BLANKCD (0x00000010)

Putar otomatis CD-Rs kosong dan CD-RW.

ARCONTENT_BLANKDVD (0x00000020)

AutoPlay DVD-Rs kosong dan DVD-RAM.

ARCONTENT_UNKNOWNCONTENT (0x00000040)

Jalankan Otomatis jika media diformat dan konten tidak termasuk dalam jenis yang dicakup oleh salah satu bendera lainnya.

ARCONTENT_AUTOPLAYPIX (0x00000080)

Putar Otomatis jika konten terdiri dari jenis file yang didefinisikan sebagai gambar, seperti file .bmp dan .jpg.

ARCONTENT_AUTOPLAYMUSIC (0x00000100)

Putar Otomatis jika konten terdiri dari jenis file yang didefinisikan sebagai musik, seperti file MP3.

ARCONTENT_AUTOPLAYVIDEO (0x00000200)

Putar Otomatis jika konten terdiri dari jenis file yang didefinisikan sebagai file video.

ARCONTENT_VCD (0x00000400)

Diperkenalkan di Windows Vista. CD video AutoPlay (VCD).

ARCONTENT_SVCD (0x00000800)

Diperkenalkan di Windows Vista. Media AutoPlay Super Video CD (SVCD).

ARCONTENT_DVDAUDIO (0x00001000)

Diperkenalkan di Windows Vista. AutoPlay DVD-Audio media.

ARCONTENT_BLANKBD (0x00002000)

Putar otomatis media DVD definisi tinggi yang dapat direkam kosong dalam format Disk™ Blu-ray (BD-R atau BD-RW). Catatan: Sebelum Windows 7, nilai ini didefinisikan untuk menentukan media yang tidak dapat direkam dalam format HD DVD.

ARCONTENT_BLURAY (0x00004000)

Diperkenalkan di Windows Vista. AutoPlay media DVD definisi tinggi dalam format Disk™ Blu-ray.

ARCONTENT_CAMERASTORAGE (0x00008000)

Diperkenalkan di Windows 8.

ARCONTENT_CUSTOMEVENT (0x00010000)

Diperkenalkan di Windows 8.

ARCONTENT_NONE (0x00000000)

Diperkenalkan di Windows Vista. AutoPlay kosong tetapi diformat media.

ARCONTENT_MASK (0x0001FFFE)

Diperkenalkan di Windows Vista. Masker yang menunjukkan nilai bendera ARCONTENT yang valid untuk jenis media. Masker ini tidak menyertakan nilai ARCONTENT_PHASE.

ARCONTENT_PHASE_UNKNOWN (0x00000000)

Diperkenalkan di Windows Vista. AutoPlay sedang mencari media. Fase pencarian (presniff, sniffing, atau final) tidak diketahui.

ARCONTENT_PHASE_PRESNIFF (0x10000000)

Diperkenalkan di Windows Vista. Isi media diketahui sebelum media dicari, karena jenis media; misalnya, CD audio dan film DVD.

ARCONTENT_PHASE_SNIFFING (0x20000000)

Diperkenalkan di Windows Vista. AutoPlay saat ini sedang mencari media. Setiap hasil yang dilaporkan selama fase ini harus dianggap sebagai daftar parsial karena lebih banyak jenis konten mungkin masih ditemukan.

ARCONTENT_PHASE_FINAL (0x40000000)

Diperkenalkan di Windows Vista. AutoPlay telah selesai mencari media. Hasil yang dilaporkan bersifat final.

ARCONTENT_PHASE_MASK (0x70000000)

Diperkenalkan di Windows Vista. Masker yang menunjukkan nilai ARCONTENT_PHASE yang valid.

[in] pszLabel

Jenis: LPCWSTR

Label media.

[in] dwSerialNumber

Jenis: DWORD

Nomor seri media.

Nilai kembali

Jenis: HRESULT

Mengembalikan S_OK untuk mengizinkan AutoRun atau S_FALSE membatalkan AutoRun.

Keterangan

Aplikasi mendaftarkan instans antarmuka IQueryCancelAutoPlay di tabel objek yang sedang berjalan (ROT). Sebelum Shell memulai AutoRun atau AutoPlay, ketika pengguna menyisipkan media baru, shell memeriksa ROT untuk komponen yang mengimplementasikan IQueryCancelAutoPlay. Jika menemukannya, Shell memanggil metode IQueryCancelAutoPlay::AllowAutoPlay implementasi tersebut untuk menentukan apakah itu harus dilanjutkan, dan menggunakan batasan apa.

Setelah presentasi media, Shell mencari ROT untuk komponen yang mengimplementasikan IQueryCancelAutoPlay. Jika ditemukan, pengidentifikasi kelas (CLSID) dari moniker komponen tersebut diekstraksi. Kehadiran pendaftaran ROT menginformasikan Shell bahwa komponen mungkin ingin membatalkan AutoRun atau AutoPlay. Untuk konfirmasi, Shell juga harus menemukan kunci registri untuk CLSID yang sama di lokasi berikut:

HKEY_LOCAL_MACHINE
   SOFTWARE
      Microsoft
         Windows
            Current Version
               Explorer
                  AutoplayHandlers
                     CancelAutoplay
                        CLSID
                           The component's CLSID
Nilai ini ditambahkan oleh aplikasi atau perangkat keras, biasanya pada waktu penginstalan. Ini tidak diberi nilai data.
Catatan CLSID yang dimasukkan sebagai nilai di bawah kunci ini tidak boleh dibungkus dalam tanda kurung kurawal.
 

Persyaratan

   
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header shobjidl.h
DLL Shell32.dll