簡體   English   中英

監控一個DLL

[英]monitoring a dll

我正在使用兩個使用相同dll文件的程序。 第一個程序的代碼丟失了,第二個程序就是我寫的。 有問題的dll用作某種包裝器dll

那么這兩個項目大部分時間都很好。 然而,有時會發生沖突,因此程序會停止。 通過反復試驗,我現在確信它與調用這個dll的那兩個程序有關(只是為了記錄,還有第三個使用dll的程序,但是我們禁用了該程序)。 它必須與兩個程序如何使用dll有關。

所以我想知道,是否有一些工具可以讓我監控一個dll並告訴我它是如何調用的;
叫什么功能; 顯示參數; 如果它不是返回的類型和結果的空白。

通常我會通過視覺工作室跟蹤逐步完成代碼。 但是因為第一個程序(包括那個dll)的代碼丟失了。 我無法追蹤它,我想調試發生的事情,然后如果我知道錯誤情況,然后在我的新程序中構建一些東西,以防止再次發生這種情況。

如果此DLL是.NET,那么您可以使用.NET Reflector或dotPeek(www.jetbrains.com)對其進行反編譯。 然后,您可以添加跟蹤代碼並再次編譯。 您還可以使用PostSharp( http://www.sharpcrafters.com )添加跟蹤代碼。

如果它不是.NET dll,那么你仍然可以使用任何其他匯編程序調試器調試它,即http://www.ollydbg.de

如果您的BIN目錄中有源代碼和.pdb文件,那么您可以通過該代碼進行調試。 但是,您需要在Visual Studio中啟用外部代碼調試。

然后,您可以在菜單Debug - > Windows - > Modules中檢查dll。

導航到dll,查看符號文件是否有任何問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM