[英]Importing C# dll library within native C++ Project
我正在嘗試將 C# dll 庫包含到本機 C++ 控制台應用程序中。 我正在使用這篇文章: https : //support.microsoft.com/en-us/kb/828736#bookmark-7
但是,這篇文章是為 Visual Studio 2015 編寫的,我使用的是 Visual Studio 2015。
首先,我在 Stackoverflow 上檢查了幾個答案,但這些問題都不是我正在尋找的。
最接近我的問題在這里: C# library to native C++ application
因此,我創建了一個 C# 庫項目,其中包含以下代碼:
namespace Testing_Library
{
// Interface declaration
public interface iCalculator
{
int Add(int number1, int number2);
}
public class ManagedClass:iCalculator
{
public int Add(int number1, int number2)
{
return number1 + number2;
}
}
}
然后我將項目編譯為dll文件,然后我通過RegAsm.exe注冊了dll文件。 現在我有兩個輸出文件:
測試庫.dll
和
Testing_Library.tlb
我還創建了本機 C++ Windows 控制台應用程序項目。 在這個項目中,我有一個 .cpp 文件,其中包含以下代碼:
// Import the type library.
#import "..\Testing_Library\bin\Debug\Testing_Library.tlb" raw_interfaces_only
using namespace std;
using namespace Testing_Library;
void main()
{
// Initialize COM.
HRESULT hr = CoInitialize(NULL);
// Create the interface pointer.
iCalculatorPtr pICalc(__uuidof(ManagedClass));
long lResult = 0;
// Call the Add method.
pICalc->Add(5, 10, &lResult);
wprintf(L"The result is %d", lResult);
// Uninitialize COM.
CoUninitialize();
}
當我嘗試運行該項目時,我收到以下錯誤屏幕:
目前我不知道為什么我會收到此錯誤 Windows 並且我無法在互聯網上找到信息。 請你幫助我好嗎? 在這里您可以找到包含所有項目的整個解決方案: Onedrive 文件夾
我正在嘗試編譯和運行當前:
考驗我
和
測試_圖書館
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.