天天看點

vs下.def檔案使用無效問題

相信用vs2005編譯寫.dll的工程的人一定對.def檔案不陌生吧,.def檔案是描述哪些要被導出來的函數。

格式如下:

library cmpnt2 -->dll名稱

exports -------->導出函數的标記符

dll_function_1 -->被導出的函數名稱

dll_function_2

..................

在我們的dll工程裡添加好.def檔案後程式設計,生成dll檔案。

    現在我們,打開調試工具"開始"->"microsoft visual studio 2005"->"visual studio tools"->"visual studio 2005 command prompt"在視窗輸入dumpbin -exports xxx.dll 檢視導出哪些函數被導出。

如:

vs下.def檔案使用無效問題

結果發現沒有導出任何函數來。這是為什麼呢?

    經過一番的折騰,才發現雖然我們把.def檔案添加在工程裡,但是那個檔案根本就沒有被編譯。這時,我們還需要做一個事情是。在工程屬性裡,"linker"->"input"->"module definition file"加入.def檔案名稱,重新編譯一下工程。

再次檢視一下輸出如下:

vs下.def檔案使用無效問題