0

バッチ ファイルを使用して vbs を作成しようとしています。しかし、オブジェクトを含める行があります。バッチ ファイルは閉じ括弧 ) を vbs に書き込むことができず、vbs の実行中にエラーが発生します。

バッチ ファイルのコードは次のとおりです。

echo Set oShell = CreateObject("WScript.Shell") >> zipIt.vbs

出力:

 echo Set oShell = CreateObject("WScript.Shell"
) 1>>zipIt.vbs
The process cannot access the file because it is being used by another process.

vbs zipIt.vbs

Set oShell = CreateObject("WScript.Shell"

vbs 出力: Microsoft (R) Windows Script Host Version 5.8 Copyright (C) Microsoft Corporation. 全著作権所有。

C:\Users\arvind\Desktop\zip\zipIt.vbs(1, 42) Microsoft VBScript コンパイル エラー: 予期される ')'

4

3 に答える 3

2

これを試して:

echo Set oShell = CreateObject("WScript.Shell"^) >> zipIt.vbs
于 2013-04-15T11:03:02.117 に答える
1

エンドロが言ったように:

これを試して:

echo Set oShell = CreateObject("WScript.Shell"^) >> zipIt.vbs

あなたのエラーメッセージは、あなたの行が括弧ブロックにある行の一部であることを示唆しています。
したがって、閉じ括弧 (echo ステートメント内でも) で問題が発生しました。
この問題は、閉じ括弧をエスケープすることで回避できます。

あなたのコメントから、このようなことを試してみることをお勧めします。
完全なブロックに対して 1 つのリダイレクトのみを使用するため、高速で信頼性が高くなります。

(
  for %%a in (dummy) DO (
    echo Set oShell = CreateObject("WScript.Shell"^)
    echo oShell.someMethod
  )
) > zipIt.vbs
于 2013-04-15T11:44:22.057 に答える