簡體   English   中英

將單個C#dll導入C ++項目?

[英]Importing singed C# dll into C++ project?

我正在嘗試將.net dll導入C ++項目。 C ++代碼包含以下代碼:

#include "stdafx.h"
#import "RemoteAgentLibs.tlb" named_guids raw_interfaces_only
int main() {
    HRESULT init = CoInitialize( NULL );
    if (init != S_OK) return 1;

    ImportedNamespace::_ClassNamePtr myclass;
    myclass = new ImportedNamespace::_ClassNamePtr("ImportedNamespace.ClassName");
    myclass->MyMeyhod();
}

一切正常,直到我在.NET項目的屬性中選中“對程序集簽名”。 在.NET項目中,我得到警告:

警告3“ dll的路徑”不包含可以為COM Interop取消注冊的任何類型。

警告3“ dll的路徑”不包含可以為COM Interop注冊的任何類型。

在C ++項目中,出現錯誤:

錯誤C2039:“ MyMethod”:不是“ ImportedNamespace :: _ ClassNamePtr”的成員

有人可以告訴我為什么導入強名稱簽名的dll有問題嗎? 還是有其他方法將我的dll導入c ++項目並將dll添加到GAC

你看起來快了嗎? 我認為這是一個很好的解決方案,您只需要編寫一個包裝即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM