Anyone knows how to do MATLAB COM autiomation in VB.NET? Since I really can't make my program works using the NE builder. I tried using the COM automation as documented here: http://www.mathworks.com/help/matlab/matlab_external/call-a-matlab-function-from-visual-basic-net-client.html
Again, my program is so simple. Here's the matlab code:
function out = addMe(a,b)
out = a + b;
end
Here's the VB code:
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
The result that I'm getting that is showing in the textbox is: ? ?? Undefined function or variable 'a' . I already made sure that the COM reference is already added.
But when I tried changing the code to this it is working.
result = Matlab.Execute("version")
I hope you can help me with this. I really needed this. Thanks

 채택된 답변

Walter Roberson
Walter Roberson 2014년 1월 30일

0 개 추천

You need to put the value from the VB space into the MATLAB space. See the example http://www.mathworks.com/help/matlab/ref/putworkspacedata.html

댓글 수: 1

I changed my code to this but I'm getting an error:
Public Class Form1
Dim Matlab As Object
Dim a As Integer = 4
Dim b As Integer = 10
Dim result As String
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Matlab = CreateObject("Matlab.Application")
Matlab.PutWorkspaceData("a", "base", a)
Matlab.PutWorkspaceData("b", "base", b)
Matlab.Execute("cd C:\Users\Elvin Gentiles\Desktop\Program")
result = Matlab.Execute("out = addMe(a,b)")
result = Matlab.GetVariable("out", "base")
TextBox1.Text = result
End Sub
End Class
Here's the error

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Write COM Applications to Work with MATLAB에 대해 자세히 알아보기

질문:

2014년 1월 30일

댓글:

2014년 1월 30일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by