0

有没有办法在 Matlab 中调用 vbscript 代码?基本上,我想运行一些 vbscript 代码并将输出变量传递给 Matlab。

4

2 回答 2

0

不是直接的。应该可以通过 COM / ActiveX 实现,尽管我认为这会很麻烦。见http://undocumentedmatlab.com/blog/running-vb-code-in-matlab

于 2012-11-27T09:50:47.477 回答
0

更简单的解决方案:

在您的 VBS 代码中,有以下行:

Wscript.Echo MyOutputVariables

其中“MyOutputVariables”是您想要的输出

然后用dos从matlab调用:

[status,message] = dos('cscript //NoLogo myvbsfile.vbs');

其中 myvbsfile.vbs 是脚本的名称。变量 message 将包含您要查找的输出。

瞧!

cscript 是 wscript(VBS 文件的 Windows 默认设置)的替代方案,它将命令输出到控制台(即消息框)——在这种情况下,是 MATLAB 控制台,因为它是从 MATLAB 调用的。

//NoLogo 选项将删除原本会出现在输出中的 Microsoft 消息。您必须使用它来使输出“干净”,这样您就不需要删除 MATLAB 本身中的消息。

我在 2015a 中尝试过这个,但我确信它适用于任何带有 dos 命令的版本和支持 cscript 的 Windows 版本。

于 2015-06-17T16:56:23.840 回答