Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 26.01.2011, 20:10   #1
niki2012
Форумчанин
 
Аватар для niki2012
 
Регистрация: 03.01.2011
Сообщений: 64
Репутация: 10
Стрелка Узнать, был ли процесс запущен пользователем или системой

Как с помощью библиотеки Tlhelp32 узнать, не является ли процесс системным?
__________________
Программист - это не тот, кто пишет программы, а тот, чьи программы работают.
niki2012 вне форума   Ответить с цитированием
Старый 26.01.2011, 20:20   #2
GunSmoker
Профессионал
 
Регистрация: 13.08.2009
Адрес: Россия, Тверь
Сообщений: 2,581
Репутация: 1066

icq: 436815515
skype: RandomClear
По умолчанию

Смотря что вкладывать в понятие "системный".
__________________
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума   Ответить с цитированием
Старый 26.01.2011, 20:25   #3
niki2012
Форумчанин
 
Аватар для niki2012
 
Регистрация: 03.01.2011
Сообщений: 64
Репутация: 10
По умолчанию

Как в диспетчере задач в графе имя пользователя (процесс нельзя убить - нет доступа)
__________________
Программист - это не тот, кто пишет программы, а тот, чьи программы работают.
niki2012 вне форума   Ответить с цитированием
Старый 26.01.2011, 22:04   #4
GunSmoker
Профессионал
 
Регистрация: 13.08.2009
Адрес: Россия, Тверь
Сообщений: 2,581
Репутация: 1066

icq: 436815515
skype: RandomClear
По умолчанию

Между "имя пользователя" и "нельзя убить" нет никакой связи.

Если вам надо "имя пользователя" - то это делается не через ToolHelp. Надо открыть процесс (OpenProcess), затем открыть у него первичный токен (OpenProcessToken), найти там владельца (GetTokenInformation) и перевести SID владельца в имя (LookupAccountSid).

Если вам надо "нельзя убить" - то делается это OpenProcess с правом на Terminate.
__________________
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как узнать - запущен ли определенный процесс ? 12usver12 Общие вопросы Delphi 16 21.02.2011 03:52
запущен ли процесс Vaska Общие вопросы C/C++ 0 03.04.2009 15:42
Узнать под каким пользователем работает процесс sysyman Win Api 2 10.02.2009 01:10


00:29.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.