StiCreateInstanceW 函数 (sti.h)
StiCreateInstance 函数创建 COM 对象的实例,该对象定义 IStillImage 接口,并返回指向接口的指针。
语法
HRESULT StiCreateInstanceW(
HINSTANCE hinst,
DWORD dwVer,
IStillImageW **ppSti,
LPUNKNOWN punkOuter
);
参数
hinst
调用方提供的调用进程的实例句柄。 此句柄是通过调用 GetModuleHandle (NULL) 获取的。
dwVer
调用方提供的 STI 版本号。 此值必须STI_VERSION,在 Sti.h 中定义。
ppSti
接收指向 IStillImage 接口的指针。
punkOuter
调用方提供的可选指针,指向对象聚合的“控制未知”。 请参阅以下 “备注” 部分。
返回值
如果操作成功,该方法将返回S_OK。 否则,它将返回 stierr.h 中定义的以 STIERR 为前缀的错误代码之一。
注解
若要使应用程序使用 IStillImage 接口,它必须首先调用 StiCreateInstance 函数来获取指向接口的指针。 调用 IStillImage 方法时,随后将使用 ppSti 中收到的指针,如以下示例所示:
PSTI pSti = NULL;
DWORD dwStiTotal = 0; // total number of STI devices found
PVOID pStiInfo = NULL; // STI device info buffer
HRESULT hres = StiCreateInstance(GetModuleHandle(NULL), STI_VERSION, &pSti, NULL);
...
hhes = pSti->GetDeviceList(0, 0, &dwStiTotal, &pStiInfo);
如果要创建包含 IStillImage 的聚合 COM 对象,则必须提供指向 punkOuter 中“控制未知”的指针。 在大多数情况下,不会创建聚合对象,因此 punkOuter 应为 NULL。 聚合一文和组件对象模型规范中介绍了对象聚合和控制未知。
要求
要求 | 值 |
---|---|
Header | sti.h (包括 Sti.h) |