輸出C ++、C#アプリケーション内の機能
-
21-09-2019 - |
質問
ご挨拶、
:私は悩まのため申し訳ありませんが、私は質問を紹介します私は、Visual Studio上で実行されているC#アプリケーションでそれらをインポートするために、DLL内のC ++で書かれたいくつかの関数をエクスポートしようとしています。 次のコードで報告されているように、私は、輸出を作る
tobeexported.hます:
namespace SOMENAMESPACE
{
class __declspec(dllexport) SOMECLASS
{
public:
SOMETYPE func(param A,char b[tot]);
};
}
tobeexported.cppます:
#include "stdafx.h"
#include "tobeexported.h"
...
using namespace SOMENAMESPACE;
SOMETYPE SOMECLASS:: func(param A,char b[tot])
{
...some stuff inside...
}
DLLがrighly作成され、コードは既にCLR管理(分解ソフトウェア(リフレクタ)で見て)で、エクスポートされた関数が含まれています その後、私は私のC#アプリケーションで、「参照の追加」とDLLが見つかりましたが、とき
私はそれが完全に空にされたオブジェクトブラウザで開き、どちらのクラス、またオブジェクトがエクスポートされていると準備を使用しますあなたは私を助けてくださいことができますか? 感謝 よろしく
解決
どのようなあなたのDLLをコンパイルするために管理C ++を使用してはどうですか?次に、あなただけの、このようなクラスに参照を追加する必要があります:
namespace SOMENAMESPACE
{
public ref class SOMECLASS
{
public:
SOMETYPE func(param A,char b[tot]);
};
}
他のプロジェクトで成功したコンパイルと参照した後、クラスが表示されるはずです。ネイティブC ++をエクスポートすると、各コンパイラは、C#...
の中から異なる結果を生成し、バインドに退屈で、本当にポータブルではありませんEDITは:refクラスにパブリックアクセス修飾子を追加...
所属していません StackOverflow