2012-08-08 23 views
2

我開發了一個用於Matlab的插件,使用COM API和C#中的後期綁定。 它適用於所有版本從2009bSP1和轉發。與版本相關的命令的Matlab腳本

然而,Matlab最近發佈了2012b預發佈,它打破了功能。我已經更新了所有的C#代碼來工作。打破功能的是Mathworks改變了callbackInfo項目的結構。有可能前致電:

var = callbackInfo.Model.Name 

在2012B搶鮮他們已經改變它

var = callbackInfo.model.Name 

注意小寫字母「M」的模型。

有沒有什麼方法可以讓我根據matlab的版本來調用腳本中的哪一個來調用?

問候

羅賓

回答

3

verLessThan允許你檢查是否matlab工具箱的版本比用戶指定的字符串以上:

if verLessThan('matlab', '7.15') % if earlier release than 7.15 
    % your code 
end 
+0

非常感謝!我會嘗試這個,但聽起來像我正在尋找的! – 2012-08-08 11:53:59

2

您可以使用MATLAB函數versionver得到你需要在相應的運行時間和分支的信息。 verLessThan也可能對您有用。

+0

是否有可能在腳本中調用「版本 - 釋放」?在那種情況下如何?否則,我想有必要以一些聰明的方式來獲取唯一的發行版名稱。 – 2012-08-08 11:50:54

+1

@RobinRye你可以使用'version(' - release')'或當然'verLessThan'這是用於這些東西 – 2012-08-08 11:53:13