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

La méthode IStillImage ::CreateDevice crée une instance de l’objet COM qui définit l’interface COM IStiDevice et retourne un pointeur vers l’interface.

Syntaxe

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

Paramètres

[in] pwszDeviceName

Pointeur fourni par l’appelant vers une chaîne représentant un nom d’appareil interne, obtenue en appelant IStillImage ::GetSTILaunchInformation ou IStillImage ::GetDeviceList.

dwMode

Valeur constante fournie par l’appelant indiquant les modes de transfert dans lesquels l’appareil doit être utilisé. Les valeurs suivantes sont valides.

Mode Description
STI_DEVICE_CREATE_BOTH L’appareil est ouvert pour l’obtention de status et le transfert de données.
STI_DEVICE_CREATE_DATA L’appareil est ouvert uniquement pour les transferts de données.
STI_DEVICE_CREATE_STATUS L’appareil est ouvert uniquement pour obtenir des informations status.

[out] pDevice

Reçoit un pointeur vers l’interface COM IStiDevice.

[in, optional] 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 IStiDevice , elle doit d’abord appeler IStillImage ::StiCreateInstance pour obtenir un pointeur vers l’interface IStillImage , puis appeler IStillImage ::CreateDevice pour obtenir un pointeur vers l’interface IStiDevice . Le pointeur reçu dans pDevice est utilisé ultérieurement lors de l’appel de méthodes IStiDevice , comme illustré dans l’exemple de code d’image fixe, pour obtenir l’accès à l’appareil spécifié.

Si vous souhaitez créer un objet COM d’agrégation qui inclut IStiDevice, 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 la documentation Microsoft Windows SDK et dans la spécification du modèle objet de composant.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête sti.h (inclure Sti.h)

Voir aussi

IStiDevice ::Release

IStillImageW