Q(solved): .NET Reflector does not contain a CLI header

由C++寫的DLL,不能直接在.NET Reflector 中打開
如果要C++寫的DLL能在.NET Reflector 中打開,我嘗試了有一個辦法(此方法可能並非唯一),就是如果C++寫的DLL是以COM組件形式加到.NET項目中(如C#項目中)。這樣,在.NET項目Bin文件夾中便會生成由原C++ DLL文件的.NET版本DLL,這個新生成的.NET版本DLL便能在.NET Reflector 中打開
附:我比較了C++ DLL  和   由C++ DLL(應該說一個COM組件)在.NET下生成的DLL
(1).NET版本的DLL比原C++ DLL還要小,可以斷定新DLL不是由舊C++Dll 擴展、包裝而來
(2)將新DLL以二進制文件打開,可以看到這個些文件基本就是對C++DLL中的IDL(接口描述)文件 進行了轉述,即轉爲.NET下COM組件接口形式。所以能在.NET Reflector 中打開。

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/sapphireren/archive/2007/12/03/1913545.aspx

發佈了79 篇原創文章 · 獲贊 1 · 訪問量 23萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章