0
我有一個託管VC++,我想在非託管C++上執行諸如Type::GetMembers()
和PropertyInfo::GetValue()
之類的操作。在非託管C++上使用託管VC++執行反射式操作
我讀了一點關於Unmanaged Reflection API,但我不確定我是否在正確的道路上。
謝謝。
我有一個託管VC++,我想在非託管C++上執行諸如Type::GetMembers()
和PropertyInfo::GetValue()
之類的操作。在非託管C++上使用託管VC++執行反射式操作
我讀了一點關於Unmanaged Reflection API,但我不確定我是否在正確的道路上。
謝謝。
您正在尋找完全錯誤的地方。
本機調試器是執行這些操作的最常用工具,必要的元數據存儲在調試數據庫(Visual C++的.pdb文件)中。
The native debugging APIs are extensively documented.
例如,SymGetTypeInfo
(和更新的SymGetTypeInfoEx
)可以訪問信息大致等同於System.Type
找到,包括基類,成員等
否,則編譯器不會生成本地代碼的任何元數據。非託管反射api可用於爲本地代碼訪問託管程序的元數據。編寫編譯器等時很有用。 – 2012-02-24 01:51:48
@Hans:如果您傳遞['/Zi'](http://msdn.microsoft.com/en-US/library/958x11bc.aspx) - 「生成程序數據庫(PDB)類型信息「 – 2012-02-24 23:48:33