0
任何人都知道如何在VB.NET中完成MATLAB COM自動化?因爲我真的無法使用NE構建器讓我的程序工作。我嘗試使用這裏記錄的COM自動化:http://www.mathworks.com/help/matlab/matlab_external/call-a-matlab-function-from-visual-basic-net-client.htmlMATLAB COM自動化錯誤
同樣,我的程序非常簡單。這裏的MATLAB代碼:
function out = addMe(a,b)
out = a + b;
end
這裏的VB代碼:
Public Class Form1
Dim a As Integer = 4
Dim b As Integer = 10
Dim result As String
Dim Matlab As Object
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Matlab = CreateObject("Matlab.Application")
result = Matlab.Execute("cd C:\Users\Elvin Gentiles\Desktop\Program")
result = Matlab.Execute("addMe(a,b)")
TextBox1.Text = result
End Sub
End Class
說我得到了在文本框中顯示的是結果:???未定義的函數或變量'a'。我已經確保COM參考已被添加。
但是,當我試圖改變代碼到這是工作。順便說一句,版本是一個matlab命令,用於顯示MATLAB的版本。
result = Matlab.Execute("version")
我希望你能幫助我。我真的需要這個。謝謝
如果我想將一個變量的值從VB傳遞給MATLAB,該怎麼辦?順便說一下,我試過你的建議和返回的答案是**?未定義的函數'addMe'用於'double'類型的輸入參數。** – elvinguitar
您以前使用過Matlab嗎?錯誤信息是不言自明的。你必須確保'addMe'函數在路徑上 - 我認爲'addMe.m'會出現在'cd'目錄中。你可以做'Matlab.Execute(「a = 2」)等等,或者查看http://www.mathworks.de/de/help/matlab/call-matlab-com-automation-server.html('PutFullMatrix' ,'PutWorkspaceData')兩個如何將矩陣更直接寫入matlab。 – sebastian