IStillImage::CreateDevice 方法创建 COM 对象的实例,该实例定义 IStiDevice COM 接口,并返回指向接口的指针。
语法
HRESULT CreateDevice(
[in] LPWSTR pwszDeviceName,
DWORD dwMode,
[out] PSTIDEVICE *pDevice,
[in, optional] LPUNKNOWN punkOuter
);
参数
[in] pwszDeviceName
调用方提供的指向表示内部设备名称的字符串的指针,通过调用 IStillImage::GetSTILaunchInformation 或 IStillImage::GetDeviceList获取。
dwMode
调用方提供的常量值,指示要使用的设备 传输模式。 以下值有效。
| 模式 | 描述 |
|---|---|
| STI_DEVICE_CREATE_BOTH | 正在打开设备以获取状态和传输数据。 |
| STI_DEVICE_CREATE_DATA | 设备仅在数据传输时打开。 |
| STI_DEVICE_CREATE_STATUS | 仅打开设备以获取状态信息。 |
[out] pDevice
接收指向 IStiDevice COM 接口的指针。
[in, optional] punkOuter
可选的调用方提供的指针,指向对象聚合的“控制未知”。 请参阅以下 备注 部分。
返回值
如果作成功,该方法将返回S_OK。 否则,它将返回在 stierr.h中定义的 STIERR 前缀错误代码之一。
言论
若要让应用程序使用 IStiDevice 接口, 它必须先调用 IStillImage::StiCreateInstance 以获取指向 IStillImage 接口的指针,然后调用 IStillImage::CreateDevice 以获取指向 IStiDevice 接口的指针。 调用 IStiDevice 方法(如示例仍然图像代码所示)以获取对指定设备的访问权限时,随后会使用 pDevice 中接收的指针。
如果要创建包含 IStiDevice的聚合 COM 对象,则必须提供指向 punkOuter中“控制未知”的指针。 在大多数情况下,不会创建聚合对象,因此 punkOuter 应 NULL。 Microsoft Windows SDK 文档和 组件对象模型规范中介绍了对象聚合和控制未知。
要求
| 要求 | 价值 |
|---|---|
| 目标平台 | 桌面 |
| 标头 | sti.h (include Sti.h) |