1. 如何查看dll文件的內容
操作設備:戴爾電腦
操作系統:win10
操作軟體:Reflectorv5.2
1、查看dll文件的內容需要先安裝Reflector軟體,如下圖所示:
2. 怎麼查看dll裡面的函數,怎麼用mpbin查看dll
主要工具有三個1、VC自帶的 mpbin,用法如:mpbin /exports mspft80.dll2、可以depends來查看依賴項3、可以用IDA反匯編工具來查看,載入你需要的dll,按F5就可以查看函數反匯編成C語言的代碼了註:以上方法也可以用來查看exe中的函數原型
3. C#調用了一個DLL文件,如何查看DLL的使用方法小白求問
在VS的對象瀏覽器中可以查看所有的對象,先選擇瀏覽范圍為我的解決方案,下方可以看到所有引用的程序集,展開你調用的程序集就可以看到所有的成員。如果沒有注釋你只能去找開發文檔了,封裝的dll是看不到具體實現的。
4. 怎樣才能知道一個dll文件里都有什麼方法可以用
動態鏈接庫(DLL)是Windows系統的核心,也是COM技術的基礎。
在Windows中,許多應用程序並不是一個完整的可執行文件,它們被分割成一些相對獨立的動態鏈接庫,即DLL文件,放置於系統中。當我們執行某一個程序時,相應的DLL文件就會被調用。可以到網上下載DLL函數查看器viewdll查看dll文件中的輸出函數,也可以使用visual studio自帶的DLL查看工具,通常在Common\Tool下
5. 如何查看dll文件內容
DLL文件是別人封裝後的程序,你肯定是看不了的,如果是用.net寫的,可以用反編譯軟體查看他的源代碼,這個軟體可以把以.dll和.exe的.net文件還原成源代碼,不過有時不會很准確。鄙視照抄、復制,pp_hu軟體的名字叫Reflector,你在網上搜一下,很多的。用法很簡單,裝好後,把你要查看的DLL文件拖到左邊,這樣你就可以看見這個DLL文件下的類、方法等,點擊這些類的名字,在右邊就可以看到源代碼了。
註:這種軟體對經過特殊處理過(如:代碼加密)的文件沒什麼效果
6. 如何查看DLL文件里的函數
1、准備好要看函數的dell文件,打開Dll函數查看器3.5。
7. 如何查看DLL中的函數名及參數
函數名很簡單,導出表裡寫的明明白白,隨便一個dll查看工具都可以讀出,比如CFF explorer。但是對於參數,就像樓上說的那樣,不能看出它真實的數據類型(即在高級語言中的抽象數據類型)。因為都編譯成匯編了,沒有抽象的概念了,此時只能知道數據大小。
但是,不代表就沒有辦法了。有個一軟體叫IDA,專門用於靜態分析,它可以反編譯匯編成C的偽代碼,從而大致能知道傳入、傳出了啥。如果再知道函數的功能的話,只要不是太復雜,分析出參數類型問題不大。
IDA反編譯大概效果就是這樣:void __fastcall Function(__int64 a1, __int64 *a2, int a3, _QWORD *a4)。這里只復制了個聲明,但也可以看出,比晦澀的匯編容易讀多了。注意上面寫的數據類型只能當作參考,因為這些數據類型也是軟體根據代碼行為推測的。
8. 如何查看DLL中的命令
沒有mpbin工具的話,去網上下載
在cmd下面,進入mp文件的目錄下
1接著,我們輸入命令 mpbin -export dll名。
2還有其他命令,可以參考help,這樣就可以了。
3可以用C++自帶的工具查。
開始 ——》所有程序 ——》 Microsoift visual C++ 6.0 ——》Microsoift visual C++ 6.0 Tools ——》 depends
查具體參數用反匯編,習慣於用OD,ctrl+N 找到要查的參數(後面會有顯示是幾個參數的),選中那一行按Enter就會跳到那個函數的調用段,裡面會有具體的參數類型。
DLL文件:
DLL文件即動態鏈接庫文件,是一種可執行文件,它允許程序共享執行特殊任務所必需的代碼和其他資源。Windows提供的DLL文件中包含了允許基於Windows的程序在Windows環境下操作的許多函數和資源。
DLL多數情況下是帶有DLL擴展名的文件,但也可能是EXE或其他擴展名。它們向運行於Windows操作系統下的程序提供代碼、數據或函數。程序可根據DLL文件中的指令打開、啟用、查詢、禁用和關閉驅動程序。
DLL可在「C:Windows」目錄「C:Windows/System」目錄和程序的安裝目錄中找到。如果啟動程序,但一個或多個DLL文件丟失或毀壞,則會收到出錯消息,如「找不到xyz.dll」。如果啟動的程序帶有一個過期的DLL文件或不匹配的DLL文件,則會出現「未定義的動態鏈接調用」消息。這時可在其他電腦上找到正確的DLL文件並將它拷貝到適當的目錄下,程序就能正確運行。
9. dll文件怎麼打開
打開方法如下:
1、選擇需要打開的DLL文件,下載eXescope,等待安裝完成。
10. 請教如何查看dll中有哪些函數
可以通過反匯編來知道介面函數的參數,建議使用W32DSM來分析,也可以直接使用VC來分析,就是麻煩一點。
現在使用W32DSM來具體說明:
1。先打開需要分析的DLL,然後通過菜單功能-》出口來找到需要分析的函數,雙擊就可以了。
它可以直接定位到該函數。
2。看準該函數的入口,一般函數是以以下代碼作為入口點的。
push ebp
mov ebp, esp
...
3。然後往下找到該函數的出口,一般函數出口有以下語句。
...
ret xxxx;//其中xxxx就是函數差數的所有的位元組數,為4的倍數,xxxx除以4得到的結果
就是參數的個數。
其中參數存放的地方:
ebp+08 //第一個參數
ebp+0C //第二個參數
ebp+10 //第三個參數
ebp+14 //第四個參數
ebp+18 //第五個參數
ebp+1C //第六個參數
。。。。
-------------------------------------------
還有一種經常看到的調用方式:
sub esp,xxxx //開頭部分
//函數的內容
。。。
//函數的內容
add esp,xxxx
ret //結尾部分
其中xxxx/4的結果也是參數的個數。
-------------------------------------------------
還有一種調用方式:
有於該函數比較簡單,沒有參數的壓棧過程,
裡面的
esp+04就是第一個參數
esp+08就是第二個參數
。。。
esp+xx就是第xx/4個參數
你說看到的xx的最大數除以4後的結果,就是該函數所傳遞的參數的個數。
----------------------------------------------
到現在位置,你應該能很清楚的看到了傳遞的參數的個數。至於傳遞的是些什麼內容,還需要進一步的分析。
最方便的辦法就是先找到是什麼軟體在調用此函數,然後通過調試的技術,找到該函數被調用的地方。一般都是PUSH指令
來實現參數的傳遞的。這時可以看一下具體是什麼東西被壓入堆棧了,一般來說,如果參數是整數,一看就可以知道了,
如果是字元串的話也是比較簡單的,只要到那個地址上面去看一下就可以了。
如果傳遞的結構的話,沒有很方便的辦法解決,就是讀懂該匯編就可以了。對於以上的分析,本人只其到了拋磚引玉,