ホームページ > バックエンド開発 > C++ > アンマネージ コードから呼び出される C# 関数をエクスポートするにはどうすればよいですか?

アンマネージ コードから呼び出される C# 関数をエクスポートするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-25 20:59:17
オリジナル
671 人が閲覧しました

How Can I Export C# Functions to Be Called by Unmanaged Code?

C# DLL からの関数のエクスポート

VS C/C とは異なり、extern "C" __declspec(dllexport) を使用して関数をエクスポートできます、C# には別のものが必要です

アンマネージド エクスポート

解決策の 1 つは、UnmanagedExports NuGet パッケージを使用することです。このパッケージを使用すると、静的メソッドを [DllExport] 属性で修飾でき、ネイティブ コードで使用するためにエクスポートできるようになります。

[DllExport]
static int AddNumbers(int a, int b)
{
    return a + b;
}
ログイン後にコピー

DLLExport

オプションは、GitHub の DLLExport ライブラリを使用することです。 UnmanagedExports と同様の機能を提供します。

[DllExport]
public static int AddNumbers(int a, int b)
{
    return a + b;
}
ログイン後にコピー

制限

C# DLL からの関数のエクスポートにはいくつかの制限があることに注意することが重要です。具体的には、この方法でエクスポートされた関数は、 C などのアンマネージ コードからのみ呼び出すことができます。 C# と他のマネージド コード間の通信が必要な場合は、相互運用性ライブラリなどの他のメカニズムの使用が必要になる場合があります。

以上がアンマネージ コードから呼び出される C# 関数をエクスポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート