API changes in R2019a?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a (Win64) C# software package allowing users to transfer data to MATLAB for user defined processing through a MATLAB script and transfer back the results.
It relies on the MATLAB API with libeng.dll etc, and was working fine with R2018b, but has stopped working with R2019a. I changed nothing, so assume something changed with the MATLAB API, but can find no mention of such a change here or on the 'News' pages.
Any bright ideas?
1 commentaire
James Tursa
le 30 Juil 2019
Did you recompile it with R2019a, or are you using the previously compiled code?
Réponses (1)
James Tursa
le 30 Juil 2019
I don't know if this is the cause of your problems, but there was a change to the low level mxArray variable structure in R2019a. So code might have to be recompiled in order to work.
5 commentaires
Bruno Luong
le 31 Juil 2019
OK so they change the order of the fields. I can't see the motivation. The aligment is more or less identical for 64-bit pointer (all MATLAB) no?
That looks odd.
James Tursa
le 31 Juil 2019
Since ClassID and VariableType are both ints they occupy 4 bytes each. Having them next to each other means they won't mess up any 8-byte boundary alignments for the stuff around them. So, yes, I agree that the compiler won't need to add any padding in either the old or the new definitions to maintain 8-byte boundary alignments of the nearby fields.
Motivation for the change? I suppose the new definition looks nicer having the crosslink stuff next to each other. But I suspect the real motivation is just to irritate me and mess up my mex hacking code ...
Voir également
Catégories
En savoir plus sur RESTful API dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!