Home > Software engineering >  DLL file the return value
DLL file the return value

Time:10-07

MATLAB recently wrote a small program, the return value is a 1 * 14 matrix, and then compile the program into a DLL file to add in the VB.NET project, but in VS2010 calls the DLL function returns an array, found that can't read the specific element in an array, always prompt index is beyond the limit, after debugging found that the dimension is "0" index "- 1" out of scope, I know VB.NET and definition of the array subscript different in MATLAB, but I don't know how to solve the encounter this error, if there is the player to know a thing or two, don't appreciate,

This is the VB.NET application and an error:


This is an array of specific return value:


This is the wrong details:


This is the MATLAB source program:

CodePudding user response:

ErrorFlag parameters defined in the Back function into ByRef?

CodePudding user response:

Don't be A language code is modified to B language code busywork,
Also don't use A language code to directly invoke B language code base, this complicated things so easy to get wrong,
Just make A, B language code of input and output is redirected to A text file, or modify A, B language code let it through text file input and output,
Can easily make A, B coordination between the two languages,
For example:
A will request data written to A file a.t xt, renamed after finish aa. TXT
B find aa. TXT, read its contents, call the corresponding function, and writes the results file b.t xt, after finish delete aa. TXT, changed its name to bb. TXT
Found A bb. TXT, read the content, after finish delete bb. TXT
Above can be replaced by any kind of A language or development environment, B can be replaced by any kind of with the development of A different language or development environment,
Unless A or B does not support to determine whether A file exists, file read and write and file name,
But who can name does not support to determine whether a file exists, file read and write and file name for the development of language or development environment?

The communication methods between the temporary text file sharing this process there are plenty of advantages, compared to other method only listed below I can think of now:
Loose coupling between process,
Can be on the same machine, process, also can cross machine, across the operating system, hardware platform, and even multinational,
, convenient debugging, and monitoring, only let the third party or artificial view the temporary text files,
Switch, convenient online service, need to delete or create the temporary text files,
, is convenient to realize distributed and load balancing,
Services to provide convenient, queue, queue is full and it is almost impossible to happen (unless the hard disk space full)
DE...

CodePudding user response:

Every time I see this reply, upstairs
How do I always feel very sick...
-_ -!!!!!!
  • Related