我已經使用SIMULINK的嵌入式編碼器創建了一個.dll文件。 (系統目標文件設置爲:ert_shrlib.tlc)它成功構建到Model_win64.dll中。現在我想從Visual Studio中引用它。將來自SIMULINK的原生.dll文件添加到Visual Studios C#
我第一次使用「添加引用」工具嘗試,但得到了以下錯誤:參考,以「文件路徑\ Model_win64.dll」
然後我搜索周圍的解決方案在線和我得到這個錯誤是由該.dll文件是一個天然的.dll文件,所以我應該使用DllImportAttribute類
引起如此代碼我目前是
using System;
using System.Runtime.InteropServices;
namespace GUI_Interface
{
class Main
{
[DllImport("Modbot_Model_win64.dll", CharSet = CharSet.Unicode)]
public static extern int[] MPC(double x, double y, double theta, double Vx, double Vy, double Vtheta);
public static BackgroundWorker test()
{
ints = MPC(0, 0, 0, 0, 0, 0);
}
}
而且我得到的運行時錯誤:無法封送'返回值':無效的託管/非託管類型組合。我試過閱讀託管/非託管類型,但我無法繞過它來解決這個問題。任何建議的解決方案或託管/非託管信息將不勝感激。
你可以嘗試改變你的exe文件,以便它是64? – tofutim