0

すべての前提条件 (ant/jdk/bada sdk など) と共に PhoneGap/Cordova を自動的にインストールする vbscript ベースの .hta インストーラーを作成しました。ほぼ完了しましたが、JDK を直接ダウンロードする必要がある部分で立ち往生しています。

この(長い)行をコマンドプロンプトにコピーして貼り付けると、機能します

 wget --header "Cookie: gpw_e24=http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html;" ""http://download.oracle.com/otn-pub/java/jdk/7u17-b02/jdk-7u17-windows-i586.exe -O jdk.exe

JDK を直接ダウンロードします。まったく問題ありません。

たとえば、コード スニペットをメモ帳に貼り付けて .vbs として保存して実行すると、機能しません。

Set objShell = CreateObject("WScript.Shell")
objShell.CurrentDirectory = "c:\"

'inQuotes function just puts quotes around the command parameters
objShell.Run inQuotes(WorkingDir & "\wget.exe") & " "  & " --header "  & inQuotes("Cookie: gpw_e24=http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html; ") & "http://download.oracle.com/otn-pub/java/jdk/7u17-b02/jdk-7u17-windows-i586.exe" & " -O" & " "  & inQuotes("jdk.exe"),1,True 


Function inQuotes(toQuote)
    'return with quotes around the toQuote parameter
    inQuotes = chr(34) & toQuote & chr(34)
End Function

objShell.Run行のどこかに問題があり、wgetがjdkをダウンロードしていません...助けてくれてありがとう:)

4

1 に答える 1

1

あなたの変数WorkingDirは定義されていますか?エコーを1つ入れると:

strCmd = inQuotes(WorkingDir & "\wget.exe") & " " & " --header " _
& inQuotes("Cookie: gpw_e24=http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html; ") _
& "http://download.oracle.com/otn-pub/java/jdk/7u17-b02/jdk-7u17-windows-i586.exe" & " -O" & " "  & inQuotes("jdk.exe")
WScript.Echo strCmd

私はこれを得る:

"\wget.exe"  --header "Cookie: gpw_e24=http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html; "http://download.oracle.com/otn-pub/java/jdk/7u17-b02/jdk-7u17-windows-i586.exe -O "jdk.exe"

そして、これは元のコマンドに渡されません。ひょっとしたらこうなるかも?

strCmd = "wget.exe --header " _
& inQuotes("Cookie: gpw_e24=http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html;") _
& " " & chr(34) &chr(34) & "http://download.oracle.com/otn-pub/java/jdk/7u17-b02/jdk-7u17-windows-i586.exe" _
& " -O jdk.exe"
WScript.Echo strCmd
于 2013-04-01T14:38:23.573 に答える