Método IStillImageW::CreateDevice (sti.h)

O método IStillImage::CreateDevice cria uma instância do objeto COM que define a Interface COM IStiDevice e retorna um ponteiro para a interface .

Sintaxe

HRESULT CreateDevice(
  [in]           LPWSTR     pwszDeviceName,
                 DWORD      dwMode,
  [out]          PSTIDEVICE *pDevice,
  [in, optional] LPUNKNOWN  punkOuter
);

Parâmetros

[in] pwszDeviceName

Ponteiro fornecido pelo chamador para uma cadeia de caracteres que representa um nome de dispositivo interno, obtido chamando IStillImage::GetSTILaunchInformation ou IStillImage::GetDeviceList.

dwMode

Valor constante fornecido pelo chamador que indica os Modos de Transferência nos quais o dispositivo deve ser usado. Os valores a seguir são válidos.

Mode Descrição
STI_DEVICE_CREATE_BOTH O dispositivo está sendo aberto para obter status e transferir dados.
STI_DEVICE_CREATE_DATA O dispositivo está sendo aberto somente para transferências de dados.
STI_DEVICE_CREATE_STATUS O dispositivo está sendo aberto apenas para obter informações de status.

[out] pDevice

Recebe um ponteiro para a interface COM IStiDevice.

[in, optional] punkOuter

Opcional, ponteiro fornecido pelo chamador para o "controle desconhecido" para agregação de objeto. Consulte a seção Comentários a seguir.

Retornar valor

Se a operação for bem-sucedida, o método retornará S_OK. Caso contrário, ele retornará um dos códigos de erro prefixados por STIERR definidos em stierr.h.

Comentários

Para um aplicativo usar a interface IStiDevice , ele deve primeiro chamar IStillImage::StiCreateInstance para obter um ponteiro para a interface IStillImage e, em seguida, chamar IStillImage::CreateDevice para obter um ponteiro para a interface IStiDevice . O ponteiro recebido no pDevice é usado posteriormente ao chamar métodos IStiDevice , conforme ilustrado no código de imagem ainda de exemplo, para obter acesso ao dispositivo especificado.

Se você quiser criar um objeto COM agregado que inclua IStiDevice, forneça um ponteiro para o "controlando desconhecido" no punkOuter. Na maioria dos casos, você não criará um objeto de agregação, portanto , punkOuter deve ser NULL. A agregação de objeto e o controle desconhecido são descritos na documentação do SDK do Microsoft Windows e na Especificação do Modelo de Objeto do Componente.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho sti.h (inclua Sti.h)

Confira também

IStiDevice::Release

IStillImageW