Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.09.2011, 16:31   #1
DarkCrystal
Новичок
Джуниор
 
Регистрация: 12.09.2011
Сообщений: 2
Восклицание проблема с DLL

Добрый день, в общем пишу сейчас библиотеку(win32/dll) и столкнулся с интересной проблемой. Библиотека должна отслеживать определенный параметр из памяти во внедряемый процесс и его значение, если значение в памяти процесса равно значению в условию, то выведет соответствующее сообщение. Надеюсь, суть я объяснил понятно.

Код:
#include "stdafx.h"
#include <windows.h>

void count()
{
     HMODULE Mydll;

     do
     {    
     Mydll = GetModuleHandleA("My.dll");
     Sleep(20);

     }while(!Mydll);

                if( (*(int*)((DWORD)Mydll + 0x398001) == 1)) 
                {
				MessageBox(NULL, "1", "Complete!", MB_OK); 
                }
                Sleep(1);
}
  }
Как на зло, компилируются проект без ошибок, но при нужном значении параметра в памяти - ничего не происходит. Долго думав/гуглив, пришел к выводу, что функция GetModuleHandleA не заработает таким образом. Теперь вопрос: как же отследить значение параметра из памяти во внедряемый процесс, исполузья DLL и только?
DarkCrystal вне форума Ответить с цитированием
Старый 12.09.2011, 16:47   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а зачем ради отслеживания памяти внедрять длл?
можно просто ReadProcessMemory.

1)да и плохая идея привязыватся к базе модуля, он может быть куда угодно загружен
2)функция count никто не вызывает.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.09.2011, 17:18   #3
DarkCrystal
Новичок
Джуниор
 
Регистрация: 12.09.2011
Сообщений: 2
Лампочка ---

-Почему длл?
Да потому, что отслеживать заданный параметр из заданного адреса процесса нужно ежесекундно, каждый момент работы программы. Так как значение по указанному адресу меняются в ходе приложения многократно.

- ReadProcessMemory
Не знаю, возможно получиться и по этому методу, но предыдущая заметка остаётся в силе.
DarkCrystal вне форума Ответить с цитированием
Старый 23.09.2011, 21:52   #4
Exoo
Пользователь
 
Регистрация: 25.03.2010
Сообщений: 53
Плохо

не могу скомпоновать длл-ку. помогите.
что нужно сделать чтобы скомпилировать проект?
все проблемы и сообщения выложены в скринах
1.jpg
//-----------------------------------------------------
2.jpg
//-----------------------------------------------------
3.jpg
//-----------------------------------------------------
4.jpg
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок, а в том, чтобы писать программы, работающие при любом количестве ошибок.

Последний раз редактировалось Exoo; 23.09.2011 в 21:54.
Exoo вне форума Ответить с цитированием
Старый 25.09.2011, 12:12   #5
VlTag
Пользователь
 
Регистрация: 25.09.2011
Сообщений: 10
По умолчанию

Прошу оказать помощь!
В программе-среде MS Visual C++ 2008 надо освоить работу с Open GL. Все необходимые файлы нашёл и разместил куда рекомендуют материалы из Internet. Помогите сделать следующие шаги:
1) прошу выслать простой код для проверки возможности работы с Open GL (найденные файлы могут не подходить по версии);
2) прошу кратко объяснить как создать простое приложение, например 3-D изображение куба с возможностью его поворота.
Это многим будет интересно и полезно!
VlTag вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с DLL Crabobass Общие вопросы Delphi 3 22.04.2011 00:06
Dll - проблема nXs Общие вопросы Delphi 2 16.07.2010 14:53
Проблема с DLL _-Re@l-_ Паскаль, Turbo Pascal, PascalABC.NET 3 09.06.2010 14:28
Проблема с DLL. profi Помощь студентам 5 06.01.2009 23:48
Проблема с dll( DM_bite Помощь студентам 10 31.07.2008 16:05