我正在爲C++類做一個C++/CLI包裝,但通過構建我的C++/CLI項目創建的DLL無法在C#中加載,Assembly.Load拋出fileNotFound異常與消息「無法加載文件或程序集」CLIExport.dll「或其某個依賴項,系統找不到指定的文件。」.NET程序集DLL缺少依賴關係
C++/CLI項目僅包含包裝類,C++類和C++類所依賴的一個頭文件,其源和頭文件已添加到解決方案中,未添加引用。我是否需要在C++/CLI項目中添加對C++類的引用?我不知道C#應用程序認爲程序集丟失了什麼,我不知道我需要添加引用,C++/CLI項目是否需要引用它使用的每個.NET類型系統命名空間?
謝謝。
您是否試圖將x86 lib加載到64位項目中? – squelos 2012-03-05 14:21:50
我不這麼認爲,我在一臺64位的個人電腦上與我正在測試的C#項目在同一臺機器上製作C++/CLI項目。你能在64位機器上創建x86庫嗎? – 2012-03-05 14:34:42
使用http://www.dependencywalker.com/並打開包裝器DLL並查看是否缺少任何依賴關係。 – 2012-03-05 14:59:44