renbu
@renbu

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

.vbs ファイルに cscript.exe 無しでファイルを渡すには?

.vbs ファイルに直接ファイルを渡したところ、取得できないようでした。

WScript.Echo WScript.Arguments.length

コマンドプロンプトより以下のように実行

テスト.vbs テスト.txt

結果:0

cscriptを使う場合

cscript テスト.vbs テスト.txt

結果:1

cscript は必須でしょうか?

また、.vbsファイルへのファイルのドラッグアンドドロップもできないようでした。
その点はバッチファイルより不便な印象です。

0

1Answer

バッチファイルというのはコマンドプロンプト(cmd.exe)の内部コマンド(と起動させる外部実行ファイル名)を並べたものなので、cmd.exeが直接実行できる例外的な存在です。
VBSを直接実行できるコマンドプロンプトのようなものとしてWindows Script Hostがありますが、互換性のために残しているだけの状態でセキュリティ的にも問題があるため、どうしてもWSHでないとまともに実行できないものでなければcscriptで実行させてください。


一応拡張子の関連付けを行えば、そのPCではcscript経由で実行してくれるようにはなりますけどね。

0Like

Your answer might help someone💌