Método IQueryCancelAutoPlay::AllowAutoPlay (shobjidl.h)
Determina se a mídia deve ser reproduzida inserida por um usuário e, em caso afirmativo, usando quais restrições.
Sintaxe
HRESULT AllowAutoPlay(
[in] LPCWSTR pszPath,
[in] DWORD dwContentType,
[in] LPCWSTR pszLabel,
[in] DWORD dwSerialNumber
);
Parâmetros
[in] pszPath
Tipo: LPCWSTR
A letra da unidade no formato D:\
[in] dwContentType
Tipo: DWORD
O tipo de conteúdo conforme especificado pelos sinalizadores a seguir.
ARCONTENT_AUTORUNINF (0x00000002)
Use o arquivo Autorun.inf. Esse é o comportamento tradicional de AutoRun.
ARCONTENT_AUDIOCD (0x00000004)
Executar CDs de áudio automaticamente.
ARCONTENT_DVDMOVIE (0x00000008)
Executar DVDs automaticamente.
ARCONTENT_BLANKCD (0x00000010)
Reprodução automática CD-Rs em branco e CD-RWs.
ARCONTENT_BLANKDVD (0x00000020)
Reprodução automática em branco DVD-Rs e DVD-RAMs.
ARCONTENT_UNKNOWNCONTENT (0x00000040)
Executar automaticamente se a mídia estiver formatada e o conteúdo não se enquadrar em um tipo coberto por um dos outros sinalizadores.
ARCONTENT_AUTOPLAYPIX (0x00000080)
Reprodução automática se o conteúdo consistir em tipos de arquivo definidos como imagens, como arquivos .bmp e .jpg.
ARCONTENT_AUTOPLAYMUSIC (0x00000100)
Reprodução automática se o conteúdo consistir em tipos de arquivo definidos como música, como arquivos MP3.
ARCONTENT_AUTOPLAYVIDEO (0x00000200)
Reprodução automática se o conteúdo consistir em tipos de arquivo definidos como arquivos de vídeo.
ARCONTENT_VCD (0x00000400)
Introduzido no Windows Vista. Reprodução automática de CDs de vídeo (VCDs).
ARCONTENT_SVCD (0x00000800)
Introduzido no Windows Vista. Mídia do SVCD (Super Video CD) de Reprodução Automática.
ARCONTENT_DVDAUDIO (0x00001000)
Introduzido no Windows Vista. Mídia de DVD-Audio de Reprodução Automática.
ARCONTENT_BLANKBD (0x00002000)
Reprodução automática de mídia de DVD de alta definição gravável em branco no formato disco Blu-ray™ (BD-R ou BD-RW). Observação: antes do Windows 7, esse valor foi definido para especificar mídia não gravável no formato HD DVD.
ARCONTENT_BLURAY (0x00004000)
Introduzido no Windows Vista. Reprodução automática de mídia de DVD de alta definição no formato Disco™ Blu-ray.
ARCONTENT_CAMERASTORAGE (0x00008000)
Introduzido no Windows 8.
ARCONTENT_CUSTOMEVENT (0x00010000)
Introduzido no Windows 8.
ARCONTENT_NONE (0x00000000)
Introduzido no Windows Vista. Reprodução automática de mídia vazia, mas formatada.
ARCONTENT_MASK (0x0001FFFE)
Introduzido no Windows Vista. Uma máscara que indica valores de sinalizador ARCONTENT válidos para tipos de mídia. Essa máscara não inclui valores ARCONTENT_PHASE.
ARCONTENT_PHASE_UNKNOWN (0x00000000)
Introduzido no Windows Vista. A Reprodução Automática está pesquisando a mídia. A fase da pesquisa (presniff, sniffing ou final) é desconhecida.
ARCONTENT_PHASE_PRESNIFF (0x10000000)
Introduzido no Windows Vista. O conteúdo da mídia é conhecido antes da mídia ser pesquisada, devido ao tipo de mídia; por exemplo, CDs de áudio e filmes de DVD.
ARCONTENT_PHASE_SNIFFING (0x20000000)
Introduzido no Windows Vista. No momento, a Reprodução Automática está pesquisando a mídia. Todos os resultados relatados durante essa fase devem ser considerados uma lista parcial, pois mais tipos de conteúdo ainda podem ser encontrados.
ARCONTENT_PHASE_FINAL (0x40000000)
Introduzido no Windows Vista. A Reprodução Automática terminou de pesquisar a mídia. Os resultados relatados são finais.
ARCONTENT_PHASE_MASK (0x70000000)
Introduzido no Windows Vista. Uma máscara que indica valores de ARCONTENT_PHASE válidos.
[in] pszLabel
Tipo: LPCWSTR
O rótulo de mídia.
[in] dwSerialNumber
Tipo: DWORD
O número de série de mídia.
Valor retornado
Tipo: HRESULT
Retorna S_OK para permitir a Execução Automática ou S_FALSE cancelar a Execução Automática.
Comentários
Os aplicativos registram uma instância da interface IQueryCancelAutoPlay na ROT (tabela de objetos em execução). Antes que o Shell inicie AutoRun ou AutoPlay, quando o usuário insere novas mídias, ele verifica a ROT de um componente que implementa IQueryCancelAutoPlay. Se encontrar um, o Shell chamará o método IQueryCancelAutoPlay::AllowAutoPlay da implementação para determinar se ele deve continuar e usando quais restrições.
Após a apresentação da mídia, o Shell pesquisa na ROT um componente que implementa IQueryCancelAutoPlay. Se for encontrado, o CLSID (identificador de classe) do moniker desse componente será extraído. A presença de um registro rot informa ao Shell que o componente pode querer cancelar a Execução Automática ou a Reprodução Automática. Para confirmação, o Shell também deve encontrar uma chave do Registro para esse mesmo CLSID no seguinte local:
HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows Current Version Explorer AutoplayHandlers CancelAutoplay CLSID The component's CLSIDEsse valor é adicionado pelo aplicativo ou hardware, geralmente no momento da instalação. Não é atribuído um valor de dados.
Requisitos
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | shobjidl.h |
DLL | Shell32.dll |