Показать сообщение отдельно
  #1  
Старый 04.07.2012, 15:25
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию Ошибка получения имени модуля

Вызываю функцию CreateProcess с ключами DEBUG_PROCESS or DEBUG_ONLY_THIS_PROCESS, получаю хэндл процесса, спокойно его (в смысле память процесса) читаю/пишу, запрашиваю состояния памяти, какбе все норм, но вот вызывая GetModuleFileNameEx(или GetModuleBaseName) получаю в LastError = 6 (INVALID_HANDLE_VALUE).
Тут есть какая-то специфика использования этой ф-ии, или может я что-то не то понаделал?

Задача - получить имя и путь запущенного приложения.

P.S. При приаттачивании процесса функции работают корректно.

Уж не придется ли переходить на NtQuerySystemInformation?
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию