Matlab で vbscript コードを呼び出す方法はありますか? 基本的に、いくつかの vbscript コードを実行し、出力変数を Matlab に渡したいと考えています。
2 に答える
はるかに簡単な解決策:
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版でも動作することは確かです。
直接ではありません。COM / ActiveX経由で可能になるはずですが、それは非常にハックだと思います. http://undocumentedmatlab.com/blog/running-vb-code-in-matlabを参照してください。