Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.25;
Скачать: [xml.tar.bz2];




Вниз

Как отлаживать DLL? 


fag2000@ok.ru   (2002-03-12 11:52) [0]

Как под отладчиком посмотреть что происходит в моей DLL?
Я создал проект DLL. В "Run->Parametrs" я указываю имя приложения, которое использует DLL. В коде DLL устанавливаю breakpoint. Запускаю проект с DLL. Когда исполнениние доходит до breakpoint в DLL, Delphi наглухо отвисает. Как этого исбежать?
Заранее благодарен.



Alx2   (2002-03-12 12:35) [1]

А без отладчика (в свободном полете) программа не виснет?



fag2000@ok.ru   (2002-03-12 12:49) [2]

Без отладчика работает без проблем.



Alx2   (2002-03-12 12:55) [3]

Даже не знаю что сказать. Слишком много может быть причин.
На всякий случай, попробуй включить stack frames



fag2000@ok.ru   (2002-03-12 13:09) [4]

Включение stack frames не помогло :(.



Alx2   (2002-03-12 13:22) [5]

Можно посмотреть код функции из DLL, секцию uses DLL,
секцию uses главного модуля вызывающего приложения, описание вызываемой функции и сам ее вызов вызывающем приложении?



fag2000@ok.ru   (2002-03-12 13:36) [6]

DLL:
library HookDll;
Uses
Windows, Messages, SysUtils;
....
....
Вызов этой функции происходит из Hook"а на клаву.
Function KeyboardHook(Code:Integer;ParamW:WPARAM;ParamL:LPARAM): LRESULT;stdcall;
Begin
If Code IN [HC_ACTION, HC_NOREMOVE] Then
Begin
SendMessage(ShareInf^.AppWndHandle,ShareInf^.KeyboardMsgId, ParamW, Code);
End;
Result := CallNextHookEx(ShareInf^.KeyboardHookHandle, Code, ParamW, ParamL)
End;
Вызывающее приложение вызывает функцию, которая вешает hook а за тем просто ловит сообщения.



Alx2   (2002-03-12 13:43) [7]

Наверняка в SetWindowsHookEx в качестве hInstance передается 0?
Если так, попробуй в передать хэндл своего приложения (того, которое вызывает).



fag2000@ok.ru   (2002-03-12 13:56) [8]

Тогда Hook будет не глобальный.



Alx2   (2002-03-12 13:58) [9]

Тогда Delphi при отладке, скорее всего, затыкаться не будет.
Можно ведь отладить и на неглобальном хуке?




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.25;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.019 c
1-80539           tovSuhov              2002-03-13 11:37  2002.03.25  
RichEdit и выравнивание строк...


1-80573           Mike.dld              2002-03-10 12:15  2002.03.25  
Проблема с созданием компонента


14-80671          Lena                  2002-02-11 20:10  2002.03.25  
Что значит ИМХО???


1-80522           jenbond               2002-03-13 10:15  2002.03.25  
Шифрование


14-80681          Andrews               2002-02-12 12:03  2002.03.25  
А когда у сайта день рождения?