Compartilhar via


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

O método IStillImage::CreateDevice cria uma instância do objeto COM que define o de interface COMIStiDevice 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 em que o dispositivo deve ser usado. Os valores a seguir são válidos.

Modo 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 apenas 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 o de interface COMIStiDevice.

[in, optional] punkOuter

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

Valor de retorno

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.

Observações

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 de IStiDevice. O ponteiro recebido em 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" em punkOuter. Na maioria dos casos, você não criará um objeto agregado, portanto, punkOuter deve ser NULL. A agregação de objeto e o controle desconhecido são descritos na documentação do Microsoft Windows SDK e na especificação do modelo de objeto do componente .

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho sti.h (inclua Sti.h)

Consulte também

IStiDevice::Release

IStillImageW