Compartilhar via


Método ICaptureGraphBuilder2::CopyCaptureFile (strmif.h)

[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.]

O CopyCaptureFile método copia os dados de mídia válidos de um arquivo de captura.

Sintaxe

HRESULT CopyCaptureFile(
  [in] LPOLESTR                   lpwstrOld,
  [in] LPOLESTR                   lpwstrNew,
  [in] int                        fAllowEscAbort,
  [in] IAMCopyCaptureFileProgress *pCallback
);

Parâmetros

[in] lpwstrOld

Ponteiro para uma cadeia de caracteres largos que contém o nome do arquivo de origem.

[in] lpwstrNew

Ponteiro para uma cadeia de caracteres largos que contém o nome do arquivo de destino. Os dados válidos são copiados para esse arquivo.

[in] fAllowEscAbort

Valor booliano que especifica se pressionar a tecla ESC cancela a operação de cópia. Se o valor for TRUE e o usuário pressionar a tecla ESC, a operação será interrompida. Se o valor for FALSE, o método ignorará a chave ESC.

[in] pCallback

Ponteiro para uma interface IAMCopyCaptureFileProgress para exibir informações de progresso ou NULL. Confira Comentários para obter mais informações.

Retornar valor

Retorna um valor HRESULT . Os possíveis valores incluem os seguintes.

Código de retorno Descrição
S_FALSE
O usuário cancelou a operação antes de ser concluída.
S_OK
Êxito.
E_FAIL
Falha.
E_INVALIDARG
Não foi possível abrir o arquivo de origem ou o arquivo de destino.
E_OUTOFMEMORY
Memória insuficiente.
E_POINTER
Argumento de ponteiro NULL.

Comentários

Normalmente, você primeiro capturará em um arquivo pré-alocado grande. Esse método copia apenas os dados válidos para um novo arquivo. Como resultado, o novo arquivo pode ser muito menor do que o arquivo original.

Os arquivos de origem e de destino devem ser arquivos AVI. Não há suporte para outros tipos de arquivo.

Para exibir o progresso da operação de cópia, implemente a interface IAMCopyCaptureFileProgress e passe um ponteiro para a interface no parâmetro pCallback . Se pCallback não for NULL, esse método chamará periodicamente o método IAMCopyCaptureFileProgress::P rogress com um inteiro entre 0 e 100 que especifica a porcentagem concluída.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho strmif.h (inclua Dshow.h)
Biblioteca Strmiids.lib

Confira também

Códigos de erro e êxito

ICaptureGraphBuilder2 Interface