Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как внедрить длл в чужой процесс, WinApi 
:(
    Опции темы
max-@
Дата 29.1.2005, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Как внедрить длл в чужой процесс, и отлавливать все его сообщения......

если возможно, то небольшой пример или ссылка рус. ресурс.........или объясните на пальцах

PM MAIL WWW   Вверх
sergejzr
Дата 29.1.2005, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

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



Сперва скажи для чего тебе это надо.

Цитата
2) Запрещается размещать материал, который является ложным, дискредитирующим, оскорбительным, вульгарным, ненавистным, непристойным, угрожающим, или нарушающем какой-либо закон. Также запрещается размещение любой рекламной информации, несогласованной с администрацией форума.

На всякий пожарный...


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
max-@
Дата 29.1.2005, 19:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Это будет точно не вирус...............
Хочу вставить свой листбокс в чужое окно и управлять им
PM MAIL WWW   Вверх
LuckLess
Дата 2.2.2005, 13:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



max-@
VirtualallocEx();
WriteProcessMemmory();
CreateRemoteThread(...Loadlibrary,"mydll.dll",...);
Добавлено @ 13:06
где вместо "mydll.dll" --Б указатель на строку содержащую "mydll.dll" в чужом процессе.

Это сообщение отредактировал(а) LuckLess - 2.2.2005, 13:09
PM MAIL   Вверх
azesmcar
Дата 2.2.2005, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 5
Всего: 211



Цитата
Это будет точно не вирус...............
Хочу вставить свой листбокс в чужое окно и управлять им


Ну раз все так прекрасно... ;)

Код

void InjectDLL( const char *pDLL, DWORD dwProcessID )
{
   LPVOID fpLoadLibrary = GetProcAddress( GetModuleHandle( "kernel32.dll" ), "LoadLibraryA" );
   if ( !fpLoadLibrary )
   {
       return;
   }
   DWORD dwThreadID = 0;
   DWORD dwSize = strlen( pDLL );
   unsigned long nWritten = 0;
   HANDLE hProcess = OpenProcess( PROCESS_CREATE_THREAD | PROCESS_VM_OPERATION | PROCESS_VM_WRITE, false, dwProcessID );
   if ( !hProcess )
   {
       return;
   }
   LPVOID pRemoteAddress = VirtualAllocEx( hProcess, NULL, dwSize, MEM_COMMIT, PAGE_READWRITE );
   WriteProcessMemory( hProcess, pRemoteAddress, (LPVOID)pDLL, dwSize, &nWritten );
   CreateRemoteThread( hProcess, NULL, NULL, (LPTHREAD_START_ROUTINE)fpLoadLibrary, pRemoteAddress, NULL, &dwThreadID );
   VirtualFreeEx( hProcess, pRemoteAddress, dwSize, MEM_DECOMMIT );
}


Можно Рихтера почитать..Джефри Рихтер, Виндоуз для профессионалов...
Там есть несколько методов, это один из них, с помощью удаленных потоков...
Добавлено @ 14:23
А вот для перехвата сообщений придеться или поставить хук на сообщения сего процесса или отловить его GetMessage и PeekMessage API функции, это уже посложнее...но если внедришь DLL-ку проблем не будет..посмотри в интернете detours.lib

Тут у кого то он был по моему, кто о даже вопрос по этому поводу задавал, если не найдешь читай Рихтера, там есть пример...

Это сообщение отредактировал(а) azesmcar - 2.2.2005, 14:26
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

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


 




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


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

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