Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Получить путь до файла зная только PID процесса? 
V
    Опции темы
COOLHack
Дата 30.4.2009, 15:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 281
Регистрация: 8.2.2008

Репутация: -1
Всего: 0



Как получить путь до файла зная только PID процесса?  
PM MAIL   Вверх
Keeper89
Дата 30.4.2009, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 14
Всего: 58



Добавил определение пути к файлу к предыдущему проекту.

P.S. Если вдруг возникнет вопрос по поводу имен файлов:
"Имена, начинающиеся с \??\ (или с \Device\..) называются ядерными именами, потому как внутре ядро работает именно с такими именами и ни с какими другими.
Тем не менее, почему именно у этих двух процессов такие имена исполняемых файлов - потому что первый (csrss.exe) запускается процессом smss.exe, а второй (winlogon.exe) запускается процессом csrss.exe.
Отличительная особенность этих процессов состоит в том, что они не используют подсистему Win32 для запуска процессов - в случае smss.exe ее еще не существует, а в случае csrss.exe - он мало того, что ее инициализирует, так еще является и серверной ее частью (в частности, отрабатывает CreateProcess).
Поэтому в этих процессах используются только вызовы функций Native API, которые отличаются тем, что не понимают в качестве имен файлов строки, начинающиеся на C:\, D:\ и так далее. Зато они понимают имена, которые содержатся в пространстве имен диспетчера объектов Windows (он к тому времени уже проинициализирован, ядерные имена для пути к разделам диска прописаны, драйверы для дисков установлены, в общем, есть все данные, чтобы по ядерному имени добраться до файла).
Собственно, такое имя можно получить и из привычного имени файла, вызвав RtlPathNameToNtPathName, и, соответственно, наоборот, из ядерного имени файла можно получить (не всегда) привычное."
©, Игорь Шевченко.

Это сообщение отредактировал(а) Keeper89 - 30.4.2009, 15:33

Присоединённый файл ( Кол-во скачиваний: 234 )
Присоединённый файл  Project1.rar 185,68 Kb


--------------------
PM MAIL WWW   Вверх
COOLHack
Дата 30.4.2009, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 281
Регистрация: 8.2.2008

Репутация: -1
Всего: 0



Работает так как нужно, респект
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0588 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.