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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отладка dll, как попасть на точку останова 
:(
    Опции темы
Coocky
Дата 6.3.2007, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

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



Привет!
Вот перекинули меня с прикладного программирования на системное. Теперь я тут smile
Никто не подскажет..Есть у меня длл. Есть у нее DllMain. Там находится вызов функций. Мне нужно отладить их работу. Как попасть мне в точку останову из exe_шника. Библиотека загружается через LoadLibrary()
При отладке библиотеки я указал это exe шник.,Ну то-то не попадаю я туда smile
Спасибо


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
chaos
Дата 6.3.2007, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

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



надо в твой основоной проект загрузить еще и проект длл. далее ставишь точку останова в длл и дебажишь

Добавлено @ 12:25 
да, еще надо в солюшн эксплорер тыкнуть правой кнопкой по одному из проекто и установить что от чего зависит : прожект депенденсис

и вроде все должно быть у тебя гуд!
PM WWW   Вверх
Coocky
Дата 6.3.2007, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

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



Э Сорри, а каким образом? smile

Добавлено @ 12:28 
Если просто добавить AddProject, то все равно молчит точка останова smile)

Добавлено @ 12:29 
Цитата(chaos @  6.3.2007,  12:23 Найти цитируемый пост)
да, еще надо в солюшн эксплорер тыкнуть правой кнопкой по одному из проекто и установить что от чего зависит : прожект депенденсиси вроде все должно быть у тебя гуд!


Тишина smile


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
chaos
Дата 6.3.2007, 12:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

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



1. открываешь свой проект в студии(не длл)
2. в солюшн эксплорере тыкаешь правой кнопкой, далее ADD -> Existin Project
3. Далее, правой кнопкой по 1му проект и выбираешь Project Dependencies и ставишь там галочку в списке Depends ON
ну и все вроде

PS студия у мя 2003я
PM WWW   Вверх
Sartorius
Дата 6.3.2007, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



 Ставишь брейк в библиотеке. Ставишь в свойствах проекта в Debug запускаемый модуль. Запускаешь отладку. 
ЗЫ Незабудь скопировать dll собранную после установки брейка туда, где ее найдет основной модуль
PM MAIL ICQ   Вверх
Coocky
Дата 6.3.2007, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

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



Цитата(chaos @  6.3.2007,  12:32 Найти цитируемый пост)
1. открываешь свой проект в студии(не длл)2. в солюшн эксплорере тыкаешь правой кнопкой, далее ADD -> Existin Project3. Далее, правой кнопкой по 1му проект и выбираешь Project Dependencies и ставишь там галочку в списке Depends ONну и все вродеPS студия у мя 2003я


Все в точночти совпадает smile)
Тишина smile


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Sartorius
Дата 6.3.2007, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



 Точно с брейком скомпилировал? (Он подсвечивается после начала отладки?)
PM MAIL ICQ   Вверх
Coocky
Дата 6.3.2007, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

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



Цитата(Sartorius @  6.3.2007,  12:33 Найти цитируемый пост)
 Ставишь брейк в библиотеке. Ставишь в свойствах проекта в Debug запускаемый модуль. Запускаешь отладку. ЗЫ Незабудь скопировать dll собранную после установки брейка туда, где ее найдет основной модуль


Это первичный вариант у меня и не работал smile

Добавлено @ 12:39 
Iject2.DLL Initializing!
Это пишет отладчик
Код

HMODULE mod=NULL;
mod= LoadLibrary("Iject2.dll");// Тут ок
DWORD err=0;
err=GetLastError();// Тут ок


Добавлено @ 12:40 
Цитата(Sartorius @  6.3.2007,  12:38 Найти цитируемый пост)
Точно с брейком скомпилировал? (Он подсвечивается после начала отладки?)

Да,но со знаком вопросика..



--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Sartorius
Дата 6.3.2007, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



Цитата

Да,но со знаком вопросика..


Это значит, что подключилась старая dll без брейка. сначала собери с брейком. потом скопируй к ехе-ку , а потом уже отлаживай. 
PM MAIL ICQ   Вверх
Coocky
Дата 6.3.2007, 12:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

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



Все.Заработал. Простогде-то запарился.. smile Потому и сюда написал, что удивился smile
Спасибо. Еще один вопрос-КАК УДАЛИТЬ добавленый проект длл из экзешника smile 


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
chaos
Дата 6.3.2007, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

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



правой кнопкой по нему -> ремув

Добавлено @ 12:53 
Цитата(Sartorius @ 6.3.2007,  14:42)
Цитата

Да,но со знаком вопросика..


Это значит, что подключилась старая dll без брейка. сначала собери с брейком. потом скопируй к ехе-ку , а потом уже отлаживай.

а вроде же при сборке ведущего проекта должен собираться и второстепенный?
PM WWW   Вверх
Coocky
Дата 6.3.2007, 12:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

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



Цитата(chaos @  6.3.2007,  12:50 Найти цитируемый пост)
правой кнопкой по нему -> ремув

Ну да.. Если в Solution smile)
Простите старика, пора на свалку smile


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
Sartorius
Дата 6.3.2007, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



Цитата

а вроде же при сборке ведущего проекта должен собираться и второстепенный? 

 Да я просто не заметил что они в одном солюшене. Странно что не собирается. А может не туда просто собирается...

Это сообщение отредактировал(а) Sartorius - 6.3.2007, 13:01
PM MAIL ICQ   Вверх
Earnest
Дата 6.3.2007, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

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



При этом dependencies ставить вовсе не обязательно. Главное, чтобы DLL загружалась при загрузке EXE, а как это делается, студии все равно.
Это я к тому, что незачем DLL из солюшена убирать... Чем мешает? Завтра опять придется дебажить...


--------------------
...
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.0582 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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