Partager via


Fonction StiCreateInstanceW (sti.h)

La fonction StiCreateInstance crée un instance de l’objet COM qui définit l’interface IStillImage et retourne un pointeur vers l’interface.

Syntaxe

HRESULT StiCreateInstanceW(
  HINSTANCE    hinst,
  DWORD        dwVer,
  IStillImageW **ppSti,
  LPUNKNOWN    punkOuter
);

Paramètres

hinst

Instance de gestion du processus d’appel fourni par l’appelant. Ce handle est obtenu en appelant GetModuleHandle(NULL).

dwVer

Numéro de version STI fourni par l’appelant. Cette valeur doit être STI_VERSION, définie dans Sti.h.

ppSti

Reçoit un pointeur vers l’interface IStillImage .

punkOuter

Facultatif, pointeur fourni par l’appelant vers le « contrôle inconnu » pour l’agrégation d’objets. Consultez la section Remarques suivante.

Valeur retournée

Si l’opération réussit, la méthode retourne S_OK. Sinon, il retourne l’un des codes d’erreur préfixés STIERR définis dans stierr.h.

Remarques

Pour qu’une application utilise l’interface IStillImage , elle doit d’abord appeler la fonction StiCreateInstance pour obtenir un pointeur vers l’interface. Le pointeur reçu dans ppSti est utilisé ultérieurement lors de l’appel de méthodes IStillImage , comme illustré dans l’exemple suivant :

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);

Si vous souhaitez créer un objet COM d’agrégation qui inclut IStillImage, vous devez fournir un pointeur vers le « contrôle inconnu » dans punkOuter. Dans la plupart des cas, vous ne créez pas d’objet d’agrégation. punkOuter doit donc avoir la valeur NULL. L’agrégation d’objets et le contrôle inconnu sont décrits dans l’article Agrégation et dans la spécification du modèle objet de composant.

Configuration requise

Condition requise Valeur
En-tête sti.h (inclure Sti.h)

Voir aussi

IStillImage ::Release