Método IDXGIOutputDuplication::GetFramePointerShape (dxgi1_2.h)
Obtém informações sobre a nova forma de ponteiro para o quadro da área de trabalho atual.
Sintaxe
HRESULT GetFramePointerShape(
[in] UINT PointerShapeBufferSize,
[out] void *pPointerShapeBuffer,
[out] UINT *pPointerShapeBufferSizeRequired,
[out] DXGI_OUTDUPL_POINTER_SHAPE_INFO *pPointerShapeInfo
);
Parâmetros
[in] PointerShapeBufferSize
O tamanho em bytes do buffer que o chamador passou para o parâmetro pPointerShapeBuffer .
[out] pPointerShapeBuffer
Um ponteiro para um buffer para o qual GetFramePointerShape copia e retorna dados de pixel para a nova forma de ponteiro.
[out] pPointerShapeBufferSizeRequired
Ponteiro para uma variável que recebe o número de bytes que GetFramePointerShape precisa para armazenar os novos dados de pixel da forma do ponteiro no buffer em pPointerShapeBuffer.
Para obter mais informações sobre como retornar o tamanho do buffer necessário, consulte Comentários.
[out] pPointerShapeInfo
Ponteiro para uma estrutura DXGI_OUTDUPL_POINTER_SHAPE_INFO que recebe as informações de forma do ponteiro.
Valor retornado
GetFramePointerShape retorna:
- S_OK se ele recuperou com êxito informações sobre a nova forma de ponteiro.
- DXGI_ERROR_ACCESS_LOST se a interface de duplicação da área de trabalho for inválida. A interface de duplicação da área de trabalho normalmente se torna inválida quando um tipo diferente de imagem é exibido na área de trabalho. Exemplos dessa situação são:
- Comutador da área de trabalho
- Alteração de modo
- Alternar do DWM ativado, DWM desativado ou outro aplicativo de tela inteira
- DXGI_ERROR_MORE_DATA se o buffer fornecido pelo aplicativo de chamada não for grande o suficiente.
- DXGI_ERROR_INVALID_CALL se o aplicativo chamado GetFramePointerShape sem possuir a imagem da área de trabalho.
- E_INVALIDARG se um dos parâmetros para GetFramePointerShape estiver incorreto; por exemplo, se pPointerShapeInfo for NULL.
- Possivelmente outros códigos de erro descritos no tópico DXGI_ERROR .
Comentários
GetFramePointerShape armazena um valor de tamanho na variável em pPointerShapeBufferSizeRequired. Esse valor especifica o número de bytes que pPointerShapeBufferSizeRequired precisa para armazenar os novos dados de pixel da forma do ponteiro. Você pode usar o valor nas seguintes situações para determinar a quantidade de memória a ser alocada para buffers futuros que você passa para pPointerShapeBuffer:
- GetFramePointerShape falha com DXGI_ERROR_MORE_DATA porque o buffer não é grande o suficiente.
- GetFramePointerShape fornece um buffer maior que o necessário. O valor de tamanho retornado em pPointerShapeBufferSizeRequired informa ao chamador quanto espaço de buffer foi realmente usado em comparação com a quantidade de espaço em buffer que o chamador alocou e especificou no parâmetro PointerShapeBufferSize .
Requisitos
Cliente mínimo com suporte | Windows 8 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2012 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | dxgi1_2.h |
Biblioteca | Dxgi.lib |