Função StiCreateInstanceW (sti.h)
A função StiCreateInstance cria uma instância do objeto COM que define a interface IStillImage e retorna um ponteiro para a interface.
Sintaxe
HRESULT StiCreateInstanceW(
HINSTANCE hinst,
DWORD dwVer,
IStillImageW **ppSti,
LPUNKNOWN punkOuter
);
Parâmetros
hinst
Identificador de instância fornecido pelo chamador do processo de chamada. Esse identificador é obtido chamando GetModuleHandle(NULL).
dwVer
Número de versão do STI fornecido pelo chamador. Esse valor deve ser STI_VERSION, definido em Sti.h.
ppSti
Recebe um ponteiro para a interface IStillImage .
punkOuter
Opcional, ponteiro fornecido pelo chamador para o "controlando 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 que um aplicativo use a interface IStillImage , ele deve primeiro chamar a função StiCreateInstance para obter um ponteiro para a interface. O ponteiro recebido em ppSti é usado posteriormente ao chamar métodos IStillImage , conforme ilustrado no exemplo a seguir:
PSTI pSti = NULL;
DWORD dwStiTotal = 0; // total number of STI devices found
PVOID pStiInfo = NULL; // STI device info buffer
HRESULT hres = StiCreateInstance(GetModuleHandle(NULL), STI_VERSION, &pSti, NULL);
...
hhes = pSti->GetDeviceList(0, 0, &dwStiTotal, &pStiInfo);
Se você quiser criar um objeto COM agregado que inclua IStillImage, deverá fornecer 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 no artigo Agregação e na Especificação do Modelo de Objeto do Componente.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | sti.h (inclua Sti.h) |