Método IMediaLocator::FindMediaFile
[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
Observação
[Preterido. Essa API pode ser removida de versões futuras do Windows.]
O FindMediaFile
método pesquisa um arquivo e, se bem-sucedido, recupera o caminho para o arquivo.
Sintaxe
HRESULT FindMediaFile(
BSTR Input,
BSTR FilterString,
BSTR *pOutput,
long Flags
);
Parâmetros
-
Entrada
-
Nome do arquivo, incluindo caminho, em que o arquivo era conhecido por residir pela última vez. Para objetos de origem no linha do tempo, use o nome de mídia atual.
-
FilterString
-
Um BSTR que contém pares de cadeias de caracteres de filtro, formatada conforme exigido pelo membro lpstrFilter da estrutura OPENFILENAME . O localizador de mídia usará esse filtro se exibir uma caixa de diálogo Abrir Arquivo. O valor poderá ser NULL se o parâmetro Flags não incluir o sinalizador SFN_VALIDATEF_POPUP.
-
pOutput
-
Ponteiro para uma variável que recebe o caminho real para o arquivo, se ele for diferente do valor contido em Entrada e se o método localizar o arquivo com êxito.
-
Sinalizadores
-
Combinação bit a bit de zero ou mais sinalizadores. Para obter uma lista de sinalizadores possíveis, consulte Sinalizadores de validação de nome de arquivo.
Retornar valor
Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.
Comentários
A cadeia de caracteres de filtro para a caixa de diálogo Abrir Arquivo, que é especificada pelo parâmetro FilterString , contém caracteres Nulos internos. Por exemplo, Video\0*.avi\0\0 é uma cadeia de caracteres de filtro válida. Você não pode usar a função SysAllocStr para alocar o BSTR, pois essa função espera uma cadeia de caracteres terminada em Null e truncará a cadeia de caracteres no primeiro caractere Null. Portanto, use uma função como SysAllocStringLen, que inclui um parâmetro explícito para o comprimento:
BSTR filter = SysAllocStringLen(L"Video\0*.avi\0", 12);
// Note: SysAllocStringLen appends an additional '\0' to the string.
Se o usuário cancelar a caixa de diálogo Abrir Arquivo, o método retornará E_FAIL.
O método aloca memória para o BSTR em pOutput. O aplicativo deve chamar SysFreeString para liberar a memória.
Observação
O arquivo de cabeçalho Qedit.h não é compatível com cabeçalhos Direct3D posteriores à versão 7.
Observação
Para obter qedit.h, baixe o SDK do Microsoft Windows Update para Windows Vista e .NET Framework 3.0. O Qedit.h não está disponível no SDK do Microsoft Windows para Windows 7 e .NET Framework 3.5 Service Pack 1.
Requisitos
Requisito | Valor |
---|---|
parâmetro |
|
Biblioteca |
|
Confira também