Partager via


IStillImageW ::CreateDevice, méthode (sti.h)

La méthode IStillImage ::CreateDevice crée une instance de l’objet COM qui définit l’interface COM IStiDevice, puis 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, obtenu 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 obtenir l’état et transférer des 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 d’état.

[out] pDevice

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

[in, optional] punkOuter

Pointeur facultatif fourni par l’appelant vers le « contrôle inconnu » pour l’agrégation d’objets. Consultez la section remarques suivante.

Valeur de retour

Si l’opération réussit, la méthode retourne S_OK. Sinon, elle 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é par la suite lors de l’appel de méthodes IStiDevice, comme illustré dans l’exemple de code d’image, 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. Par conséquent, punkOuter doit être NULL. L’agrégation d’objets et le contrôle inconnu sont décrits dans la documentation du Kit de développement logiciel (SDK) Microsoft Windows et dans la spécification du modèle objet composant .

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête sti.h (include Sti.h)

Voir aussi

IStiDevice ::Release

IStillImageW