![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 20.10.2018
Сообщений: 16
|
![]()
Есть функция, которая выполняет иньекцию длл (32 bit) в процесс (также 32bit). если собираю свою программу (инжектор) как 32 bit - все прекрасно работает. если как 64 bit - иньекция не производиться (хотя функция возвращает результат 2 (то есть успешный). почему не работает в 64 bit? и как это исправить?
Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,368
|
![]()
В разных процессах адрес загрузки kernel32.dll может быть разным.
Я вообще удивляюсь, что это работает и на х32. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 20.10.2018
Сообщений: 16
|
![]()
на самом деле инжектор это одна из опций моей программы, она большая и мне хотелось бы оставить ее x64. правильно ли я понимаю что единственный выход это сделать отдельное приложение инжектор x86 и делать иньекию через него? (то есть просто запускать его и передавать пид и имя процессора ей)? (это будет реализовано примерно следующим образом: моя основная программа (инжектор) будет запускать при старте дополнительную программу x86 которая будет всего навсего получать адрес LoadLibraryA в kernel x86 и передавать в основную программу этот адрес. затем уже используя этот адрес моя основная программу будет инжектить необходимые длл куда нужно.
т.е. правильно ли я понимаю что такие dll как user32.dll kernel32.dll никому не будут выгружены в рамках одной сессии пользователя windows и в процессе работы приложения мне не нужно обновлять адреса функций этих длл? |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
TesseractOCR4(delphi) : Release все работает, DEBUG практически не работает. все остальное одинаково | Pcrepair | Общие вопросы Delphi | 0 | 23.06.2023 17:20 |
QUdpSocket работает только при локальном IP. Не работает если указан динамичесский айпи | kook163 | Qt и кроссплатформенное программирование С/С++ | 5 | 09.05.2018 22:40 |
Программа на Visual C# работает при запуске руками, но не работает при попытки автоматического запуска | Bug$ | Помощь студентам | 18 | 21.10.2013 16:22 |
не работает relese версия проги и debug работает тока на моем компе | D][mon | C# (си шарп) | 2 | 04.05.2012 20:21 |
Почему программа на С++ не работает с локальным описанием массива, но работает с глобальным? | >>STINGER<< | Помощь студентам | 4 | 08.03.2011 09:56 |