C++ dll を作成しました。System.Runtime.InteropServices を使用しています。まず、.netcore コンソール アプリケーションで dll をテストしたところ、正常に動作しました。.netcore アプリケーションで参照しようとすると、SEHException が発生します: 外部コンポーネントが例外をスローしました: dll を参照する方法は次のとおりです。
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Runtime.InteropServices;
namespace WpfApp1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
[DllImport(@"C:\Users\source\repos\Digital\x64\Debug\DigitalDrive.dll", CallingConvention = CallingConvention.Cdecl)]
public static extern int add(int a, int b);
[DllImport(@"C:\Users\source\repos\Digital\x64\Debug\DigitalDrive.dll", CallingConvention = CallingConvention.Cdecl)]
public static extern void start();
public MainWindow()
{
start();
InitializeComponent();
}
}
}