Поделиться через


Функция RmGetList (restartmanager.h)

Возвращает список всех приложений и служб, которые в настоящее время используют ресурсы, зарегистрированные в сеансе Диспетчера перезапуска.

Синтаксис

DWORD RmGetList(
  [in]                DWORD              dwSessionHandle,
  [out]               UINT               *pnProcInfoNeeded,
  [in, out]           UINT               *pnProcInfo,
  [in, out, optional] RM_PROCESS_INFO [] rgAffectedApps,
  [out]               LPDWORD            lpdwRebootReasons
);

Параметры

[in] dwSessionHandle

Дескриптор существующего сеанса диспетчера перезапуска.

[out] pnProcInfoNeeded

Указатель на размер массива, необходимый для получения RM_PROCESS_INFO структур, необходимых для возврата сведений для всех затронутых приложений и служб.

[in, out] pnProcInfo

Указатель на общее количество RM_PROCESS_INFO структур в массиве и количество заполненных структур.

[in, out, optional] rgAffectedApps

Массив RM_PROCESS_INFO структур, в которых перечислены приложения и службы, использующие ресурсы, зарегистрированные в сеансе.

[out] lpdwRebootReasons

Указатель на расположение, получающее значение перечисления RM_REBOOT_REASON , описывающее причину, по которой требуется перезагрузка системы.

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

Это самая последняя полученная ошибка. Функция может возвращать один из кодов системных ошибок , определенных в Winerror.h.

Значение Значение
ERROR_SUCCESS
0
Функция успешно завершена.
ERROR_MORE_DATA
234
Это значение ошибки возвращается функцией RmGetList , если буфер rgAffectedApps слишком мал для хранения всех сведений о приложении в списке.
ERROR_CANCELLED
1223
Текущая операция отменена пользователем.
ERROR_SEM_TIMEOUT
121
Функции Диспетчер перезапуска не удалось получить мьютекс записи реестра в отведенное время. Рекомендуется перезапустить систему, так как дальнейшее использование диспетчера перезапуска, скорее всего, завершится ошибкой.
ERROR_BAD_ARGUMENTS
160
Один или несколько аргументов неверны. Это значение ошибки возвращается функцией Restart Manager, если указатель NULL или 0 передается в параметре, требующем ненулевое и ненулевое значение.
ERROR_WRITE_FAULT
29
Операции не удалось выполнить чтение или запись в реестр.
ERROR_OUTOFMEMORY
14
Не удалось завершить операцию диспетчера перезапуска, так как недостаточно памяти.
ERROR_INVALID_HANDLE
6
Сеанс диспетчера перезапуска для предоставленного дескриптора не существует.

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header restartmanager.h
Библиотека Rstrtmgr.lib
DLL Rstrtmgr.dll

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

RmCancelCurrentTask