Приветствую!
Пытаюсь на терминальном сервере 2008r2 читать список процессов, их нагрузку на ЦП и владельцев:
Для процессов своего пользователя, от которого запускаю скрипт, все работает. Работает и для системных процессов (система, LOCAL SERVICE и т.п.)
А вот для других пользователей терминала, оба вызова:
_WinAPI_GetProcessTimes($pid) и _WinAPI_GetProcessUser($pid) выдают error.
_WinAPI_GetLastError() возвращает 5: Отказано в доступе.
Как эту проблему решить?
Скрипт запускаю от имени администратора домена и соотв. администратора сервера. UAC выключен.
Нашел в MSDN про GetProcessTimes function:
Я так понимаю, это надо сделать функцией _WinAPI_AdjustTokenPrivileges?
Которая описана в справке, но без примеров, и пока совершенно не могу понять, что именно надо ей передавать...
Пытаюсь на терминальном сервере 2008r2 читать список процессов, их нагрузку на ЦП и владельцев:
Код:
$aProcessList=ProcessList()
For $i=1 To $aProcessList[0][0]
Local $pid=$aProcessList[$i][1]
Local $aTimeProcess = _WinAPI_GetProcessTimes($pid)
Local $aGetProcessUser=_WinAPI_GetProcessUser($pid)
; ...
Next
Для процессов своего пользователя, от которого запускаю скрипт, все работает. Работает и для системных процессов (система, LOCAL SERVICE и т.п.)
А вот для других пользователей терминала, оба вызова:
_WinAPI_GetProcessTimes($pid) и _WinAPI_GetProcessUser($pid) выдают error.
_WinAPI_GetLastError() возвращает 5: Отказано в доступе.
Как эту проблему решить?
Скрипт запускаю от имени администратора домена и соотв. администратора сервера. UAC выключен.
Нашел в MSDN про GetProcessTimes function:
Я так понимаю, надо сказать своему процессу, чтобы он себе поставил право на PROCESS_QUERY_INFORMATION.A handle to the process whose timing information is sought. The handle must have the PROCESS_QUERY_INFORMATION or PROCESS_QUERY_LIMITED_INFORMATION access right. For more information, see Process Security and Access Rights.
Я так понимаю, это надо сделать функцией _WinAPI_AdjustTokenPrivileges?
Которая описана в справке, но без примеров, и пока совершенно не могу понять, что именно надо ей передавать...