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)

另请参阅

IStillImage::Release