Функция RoInitialize (roapi.h)

Инициализирует среда выполнения Windows в текущем потоке с указанной моделью параллелизма.

Синтаксис

HRESULT RoInitialize(
  [in] RO_INIT_TYPE initType
);

Параметры

[in] initType

Тип: RO_INIT_TYPE

Модель параллелизма для потока. Значение по умолчанию — RO_INIT_MULTITHREADED.

Возвращаемое значение

Тип: HRESULT

Эта функция может возвращать стандартные возвращаемые значения E_INVALIDARG, E_OUTOFMEMORY и E_UNEXPECTED, а также следующие значения.

Код возврата Описание
S_OK
Среда выполнения Windows успешно инициализирован в этом потоке.
S_FALSE
В этом потоке уже инициализирована среда выполнения Windows.
RPC_E_CHANGED_MODE
Предыдущий вызов RoInitialize указывал модель параллелизма для этого потока как многопоточное подразделение (MTA). Это также может указывать на то, что произошло изменение с нейтрального подразделения на однопотоковое.

Комментарии

Используйте функцию RoInitialize для инициализации потока в среда выполнения Windows. Все потоки, которые активируют объекты среда выполнения Windows и взаимодействуют с ними, должны быть инициализированы перед вызовом в среда выполнения Windows.

Вызовите функцию RoUninitialize, чтобы закрыть среда выполнения Windows в текущем потоке. Каждый успешный вызов RoInitialize, включая те, которые возвращают S_FALSE, должен быть сбалансирован соответствующим вызовом RoUninitialize.

Требования

Требование Значение
Минимальная версия клиента Windows 8 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2012 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header roapi.h

См. также раздел

CoInitializeEx

RO_INIT_TYPE

RoUninitialize