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