Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.08.19;
Скачать: [xml.tar.bz2];

Вниз

Как достать значение из памяти д ругой проги?   Найти похожие ветки 

 
antonp   (2002-06-13 08:33) [0]

Нужно достать значение из памяти другой проги.
Пишем:
var Uo: Hwnd;
a,k: Cardinal;
p,i: Pointer;
n: Integer;
begin
p:=@n;
i:=Ptr($0134FD08);
Uo:=WindowFromPoint(Mouse.CursorPos); узнаем хендл окна
GetWindowThreadProcessID(Uo, a); узнаем хендл процесса
ReadProcessMemory(a, i, p, 8, k); считываем значение
Edit1.Text:=IntToStr(n);
Но ReadProcessMemory возвращает 0 т.е. не срабатывает. Почему?
GetLastError возвращает 6. Если я там посмотрел это значит что хендл процесса неправильный но я проверял по другой проге и ID процесса моя прога возвращает правильно.
Заранее благодарен.


 
Digitman   (2002-06-13 10:27) [1]

1.
>>GetWindowThreadProcessID(Uo, a); узнаем хендл процесса

И как же ты его здесь "узнаешь" ? Ты же результат ф-ции игнорируешь ! Прокомментируй.

2. Процесс перед использованием ф-ции ReadProcessMemory() д.б. открыт как минимум с правом PROCESS_VM_READ (см.вызов OpenProcess())


 
Alexander Vorobyov   (2002-06-13 10:29) [2]

А между строчками:
GetWindowThreadProcessID(Uo, a);
ReadProcessMemory(a, i, p, 8, k);

ты случайно не пропустил нечто вроде
hProc:=OpenProcess(PROCESS_ALL_ACCESS,False,a);
?



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.08.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.006 c
14-60823
Alx2
2002-07-23 13:38
2002.08.19
Задачка


6-60771
ogu
2002-06-05 20:25
2002.08.19
Серверное приложение на Delphi


1-60648
Leran2002
2002-08-08 15:16
2002.08.19
InstallShield


7-60877
Sergey Geraschenko
2002-06-05 20:14
2002.08.19
программа работающая только под win98/me


3-60510
cooluser
2002-07-30 08:20
2002.08.19
СОздание таблицы Ошибка!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский