初始化函数 (roapi.h)

初始化线程以使用 Windows 运行时 API。

语法

HRESULT Initialize(
  RO_INIT_TYPE initType
);

参数

initType

指定要初始化的线程的单元类型。

返回值

  • S_OK - 在当前线程上首次成功初始化
  • S_FALSE - 已成功为指定的单元类型初始化当前线程 (嵌套初始化)
  • E_INVALIDARG - initType 值无效
  • CO_E_INIT_TLS - 无法分配 COM 的内部 TLS 结构
  • E_OUTOFMEMORY - 无法分配除 TLS 以外的每个线程/每个单元的结构
  • RPC_E_CHANGED_MODE - 当前线程已针对与指定单元类型不同的单元类型进行初始化。

注解

Windows::Foundation::Initialize 更改为为RO_INIT_SINGLETHREADED RO_INIT_TYPE值创建 ASTA 而不是经典 STA。 桌面应用程序不支持 Windows::Foundation::Initialize (RO_INIT_SINGLETHREADED) ,如果从 Windows 应用商店应用以外的进程调用,将返回CO_E_NOTSUPPORTED

对于 Microsoft DirectX 应用程序,必须使用 Windows::Foundation::Initialize (RO_INIT_MULTITHREADED) 初始化初始线程。

对于进程外 EXE 服务器,必须使用 Windows::Foundation::Initialize (RO_INIT_MULTITHREADED) 初始化服务器的初始线程。

要求

要求
目标平台 Windows
标头 roapi.h

另请参阅

RO_INIT_TYPE