Metodo IStillImageW::CreateDevice (sti.h)
Il metodo IStillImage::CreateDevice crea un'istanza dell'oggetto COM che definisce l'interfaccia COM IStiDevicee restituisce un puntatore all'interfaccia .
Sintassi
HRESULT CreateDevice(
[in] LPWSTR pwszDeviceName,
DWORD dwMode,
[out] PSTIDEVICE *pDevice,
[in, optional] LPUNKNOWN punkOuter
);
Parametri
[in] pwszDeviceName
Puntatore fornito dal chiamante a una stringa che rappresenta un nome di dispositivo interno, ottenuto chiamando IStillImage::GetSTILaunchInformation o IStillImage::GetDeviceList.
dwMode
Valore costante fornito dal chiamante che indica il modalità di trasferimento in cui deve essere usato il dispositivo. I valori seguenti sono validi.
Modo | Descrizione |
---|---|
STI_DEVICE_CREATE_BOTH | Il dispositivo viene aperto sia per ottenere lo stato che per il trasferimento dei dati. |
STI_DEVICE_CREATE_DATA | Il dispositivo viene aperto solo per i trasferimenti di dati. |
STI_DEVICE_CREATE_STATUS | Il dispositivo viene aperto solo per ottenere informazioni sullo stato. |
[out] pDevice
Riceve un puntatore all'interfaccia COM IStiDevice .
[in, optional] punkOuter
Puntatore fornito dal chiamante facoltativo al "controllo sconosciuto" per l'aggregazione di oggetti. Vedere la sezione osservazioni seguente.
Valore restituito
Se l'operazione ha esito positivo, il metodo restituisce S_OK. In caso contrario, restituisce uno dei codici di errore con prefisso STIERR definiti in stierr.h.
Osservazioni
Affinché un'applicazione usi l'interfaccia IStiDevice, deve prima chiamare IStillImage::StiCreateInstance per ottenere un puntatore all'interfaccia IStillImage, quindi chiamare IStillImage::CreateDevice per ottenere un puntatore all'interfaccia IStiDevice. Il puntatore ricevuto in pDevice viene usato successivamente quando si chiama metodi IStiDevice, come illustrato nel codice dell'immagine di esempio, per ottenere l'accesso al dispositivo specificato.
Se si desidera creare un oggetto COM aggregato che include IStiDevice, è necessario fornire un puntatore al "controllo sconosciuto" in punkOuter. Nella maggior parte dei casi non si creerà un oggetto aggregato, quindi punkOuter dovrebbe essere NULL. L'aggregazione degli oggetti e il controllo sconosciuto sono descritti nella documentazione di Microsoft Windows SDK e nella specifica del modello a oggetti del componente .
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Desktop |
intestazione | sti.h (include Sti.h) |