C++ で定義された関数を使用する WPF アプリケーションを作成しようとしています。C++ アプリケーションは DLL としてコンパイルされます。
私がやっていることは、関数をインポートして使用するために DllImport 属性を使用することです。これは私のマシンでは問題なく動作しますが、別のマシンで WPF アプリケーションを実行しようとすると、「DLL が見つかりません」というエラーが表示されます。
私の C# (WPF) コードの抜粋:
[DllImport("Dll.dll")]
public static extern int MyFunc();
public MainWindow()
{
InitializeComponent();
MessageBox.Show("Starting");
try
{
MessageBox.Show(MyFunc().ToString());
}
catch (Exception exc)
{
while (exc != null)
{
MessageBox.Show(exc.Message);
exc = exc.InnerException;
}
}
私のC++コード:
extern "C" __declspec(dllexport) int MyFunc() {
return 3;
}
私のエラーがどこにあるのか誰にもわかりますか?
よろしくお願いします。
編集:依存関係「MSVCR100D」が存在しないことが問題のようです。私の理解では、これは私がインストールした VC++ 再頒布可能パッケージのファイルであり、役に立たなかったということです。