Что нового

[Процессы] Помогите мониторить процесс запущенный под конкретным пользователем на сервере

mayro

Новичок
Сообщения
14
Репутация
0
Версия AutoIt: 3.

Описание:

Помогите написать скрипт, который будет мониторить процесс notepad.exe запущенный только под тем пользователем, под которым запущен сам скрипт аутоита.

Скрипт (см. ниже), мониторит сразу весь компьютер и все учетные записи, а надо мониторить только одного пользователя под которым запущен этот скрипт.

#include <MsgBoxConstants.au3>
Do
If ProcessExists("notepad.exe") Then ; Check if the Notepad process is running.
MsgBox($MB_SYSTEMMODAL, "", "Notepad is running")
Else
MsgBox($MB_SYSTEMMODAL, "", "Notepad is not running")
EndIf
Sleep(2000)
Until False

Спасибо за помощь!

Примечания:
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
mayro [?]
мониторить только одного пользователя под которым запущен этот скрипт
При некорректном поиске раскомментируйте всё, что закомментировано
Код:
;~ #RequireAdmin

#include <WinAPIProc.au3>

;~ Global $aAdjust
;~ $hToken = _WinAPI_OpenProcessToken(BitOR($TOKEN_ADJUST_PRIVILEGES, $TOKEN_QUERY))
;~ _WinAPI_AdjustTokenPrivileges($hToken, $SE_DEBUG_NAME, $SE_PRIVILEGE_ENABLED, $aAdjust)
;~ If @error Or @extended Then Exit MsgBox(0x40000, "", "Ошибка получения привелегий")

$aData = _WinAPI_GetProcessUser(@AutoItPID)
If @error Then Exit MsgBox(0x40000, "", "Ошибка определения имени пользователя")
$sUser = $aData[0]

$aList = ProcessList("notepad.exe")
If Not $aList[0][0] Then Exit MsgBox(0x40000, "", "Процесс 'notepad.exe' не обнаружен")

For $i = 1 To $aList[0][0]
  $aData = _WinAPI_GetProcessUser($aList[$i][1])
  If IsArray($aData) And $aData[0] = $sUser Then ExitLoop
Next
If $i > $aList[0][0] Then Exit MsgBox(0x40000, "", "Процесс пользователя " & $sUser & " не найден")

MsgBox(0x40000, "", "Процесс найден. PID = " & $aList[$i][1])

;~ _WinAPI_AdjustTokenPrivileges($hToken, $aAdjust, 0, $aAdjust)
;~ _WinAPI_CloseHandle($hToken)
 
Автор
M

mayro

Новичок
Сообщения
14
Репутация
0
Большое спасибо ! Скрипт Работает ! :laugh: :laugh: :laugh: :laugh: :laugh: То что надо!
 
Верх