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

Вниз

Чужой процесс...   Найти похожие ветки 

 
sergey1   (2004-02-05 20:57) [0]

Здравствуйте !
Может кто подскажет что не так в моем коде, почему он не работает в
чужом процессе ?

GetMem(buff, 255);
DrWND      := GetParent(Handle ListView)
lv         := Handle ListView  

GetWindowThreadProcessId(DrWND, pid);
hProcess  :=  OpenProcess(PROCESS_ALL_ACCESS, false, pid);
addr      :=  VirtualAllocEx(hProcess, @buff, SizeOf(buff), MEM_COMMIT, PAGE_READWRITE);
ListView_GetItemText(lv, 0, 1, addr, SizeOf(buff));
ReadProcessMemory(hProcess, addr, buff, SizeOf(buff), count);
VirtualFreeEx(hProcess, addr, SizeOf(buff), MEM_RELEASE);
ShowMessage(StrPas(buff));
CloseHandle(hProcess);
FreeMem(buff, SizeOf(Buff));

Спасибо.


 
Rauf ©   (2004-02-06 01:26) [1]

Ну во-первых,
ListView_GetItemText( lv, 0, 1, addr, Sizeof( buff ) );
Ты считываешь текст элемента в буффер, значение которого есть выделенная тобою память в чужом процессе. Но считываешь то ты текст все равно в память своего процесса.

Ну во-вторых, ИМХО лучше получать конкретный доступ к процессу, а не весь сразу (PROCESS_ALL_ACCESS).

И в третьих, ты что пытаешься считать текст из листбокса в чужом процессе в память, выделенную в том же чужом процессе?
Если так, то делать это следует через
считывание в буфер своего процесса (ReadProcessMemory),
и запись в выделенный буфер в чужом процессе (WriteProcessMemory).


 
Digitman ©   (2004-02-06 13:39) [2]

как минимум ЭТА строчка должна выполняться в ВАП "чужого" (а не своего) процесса

ListView_GetItemText(..);

не говоря уже об остальных ошибках


 
Digitman ©   (2004-02-06 13:45) [3]

вру.

в любом ВАП она может быть выполнена, но переданные параметрами адрес и размер буфера должны быть актуальными в "чужом", а не своем ВАП

Size(buff) всегда = 4, если buff - указатель, ... что следует из Getmem()



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

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

Наверх




Память: 0.45 MB
Время: 0.046 c
14-1082440980
XAOC
2004-04-20 10:03
2004.04.11
что это такое и с чем его есть??????????????????


14-1079206427
Knight
2004-03-13 22:33
2004.04.11
Люди зацените набросок для ScreenSaver а...


1-1080227705
Bazil
2004-03-25 18:15
2004.04.11
Вопрос по QuickReport


1-1082210370
Kiloper
2004-04-17 17:59
2004.04.11
Как програмно собрать несколько файлов в один файл,


14-1082362842
Padre
2004-04-19 12:20
2004.04.11
Как установить скорость COM порта = 5 бод ?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский