Книга: Недокументированные и малоизвестные возможности Windows XP

Создание, завершение и просмотр учетной записи процесса

Создание, завершение и просмотр учетной записи процесса

К другим основным возможностям инструментария управления WMI относятся возможности работы с процессами, запущенными на удаленном или локальном компьютере. При этом инструментарий предоставляет возможности не только по запуску или завершению процесса, но и по определению учетной записи, от имени которой запущен определенный процесс. Для работы с процессами используется класс Win32_Process, принадлежащий к пространству имен rootcimv2. Рассмотрим маленький пример по созданию нового процесса с использованием метода Create. 

Листинг 11.4. Создание нового процесса

set obj = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!.root cimv2:Win32_Process")
obj.Create "C:WINDOWSregedit.exe"

Действительно, маленький пример. Теперь подробнее рассмотрим методы класса Win32_Process, направленные на работу с процессами.

? Create — как уже известно, данный метод используется для создания процесса. При этом после своего выполнения метод возвращает следующие значения (это не все):

 • 0 — успешное завершение;

 • 2 — пользователь не имеет доступа к запрашиваемым данным;

 • 3 — у пользователя нет достаточных привилегий;

 • 8 — неизвестная ошибка;

 • 9 — пользователь не имеет необходимых привилегий;

 • 21 — указан недопустимый параметр.

Несмотря на то, что при вызове данного метода был использован только один параметр, на самом деле для работы с ним нужны четыре параметра. Во-первых, это путь к файлу, который будет вызван (в данном случае применялся только этот параметр). Во-вторых, это путь к каталогу, который должен использовать-ся вызываемым процессом (если он не задан, то будет использоваться каталог, в котором находится запускаемый файл). В-третьих, это строка начальной конфигурации процесса (если она не задана, то будет применяться пустая строка ("")). В-четвертых, это переменная, которой будет присвоен идентификатор созданного процесса.

? Terminate — прекращает процесс и все его дочерние процессы.

? GetOwner — возвращает учетную запись пользователя, от имени которого был запущен процесс, а также домен, к которому он принадлежит.

? GetOwnerSid — возвращает SID пользователя, от имени которого был запущен процесс.

? SetPriority — устанавливает приоритет выполнения определенного процесса.

? AttachDebugger — вызывает отладчик данного процесса.

ПРИМЕЧАНИЕ

За более детальной информацией обращайтесь к файлу cimwin32.mfl, расположенному в каталоге %systemroot%SYSTEM32wbem.

Оглавление книги


Генерация: 1.147. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз