DLL 工作筆記

2021-08-10 11:50:07 字數 742 閱讀 6963

源由

分析工程**的時候,由於各功能元件大量的使用了dll,註冊,管理排程器等思想方法,導致分析**結構十分的蛋疼。
解決過程
- 簡單了解了下dll的原理,dllmain load那幾個作用

- 理清了大佬們對export和inport的蛋疼解釋

結果
管理器

註冊機制

狀態機預編譯巨集

現在又有了dll這種玩意,確實構造靈活了,但是在無文件和系統培訓的情況下,成倍的增加了學習的初始動能。(了解了正規化之後,又顯得使用很輕鬆)

套路
阻止**跟蹤和邏輯的原因,一般都是f12查詢定義或者查詢引用的時候找不到當前目標的實現或者歸屬。

此處很不負責任的分為 隱式載入和對映

1,dll中使用全域性變數,當呼叫那個load dll函式的時候,全域性變數的建構函式可以實現註冊,狀態等操作。(ps據說dll全域性變數是程式編譯時就被載入的)此處只是這麼來理解了,無傷大雅。

2,函式指標陣列對映,使用陣列索引與函式進行對映。一次初始化後,使用索引來使用函式。

3,註冊,某管理器中,萬能指標,或者正規化函式指標作為承載物,在執行中將具體函式或資料賦值給該指標。

其實這些東西和c++的建構函式析構函式,虛函式等很像,具體原理也差不都。

總之,手段特徵是間接,隱藏。

此致,萬惡的c++
c是藝術,c++是技術。不純粹。

SAP工作筆記

sap 筆記整理 sap筆記整理 1一 abap 開發部分 21 常用tcode se80 se38 se11 se10 se93 22 se11 是abap 字典,可以查詢資料庫欄位和儲存資訊。33 se10 用來查詢開發過的程式相關資訊。34 se93 用來發布程式,給程式乙個tcode.3 5...

工作筆記(二)

對 android系統源 情景分析 書中例子 在裝置驅動程式中 開啟裝置函式比如 freg open struct inode inode,sruct file filp 它的作用實質上就是將file這個檔案結構體中的空指標成員變數private data賦上你所要訪問的裝置的結構體的位址而已。以便...

工作筆記 ALG cscope

alg是路由器的功能,如果兩台pc之間用路由器相連並使用ftp傳輸資料,則內網的資料報經過路由器的時候會有兩個ip位址被替換掉,ip報頭的內網ip通過nat功能被替換掉和tcp報文中的ip被alg功能替換掉。如果兩台pc直接相連不經過路由器則資料報的這兩個ip就都不會被替換掉 vimrc是vim的定...