0

これは、nsis スクリプトにある関数です。

Function rubyDependencies
    DetailPrint "Installing Web Runtime Environment dependencies..."
    ExecWait "gem install rails –v2.3.8"
    ExecWait "gem install rake –v0.8.7"
    ExecWait "gem uninstall rake –v10.0.3"
    ExecWait "rake gems:install"
    DetailPrint "Dependencies installed."
FunctionEnd

私が試してみました:

ExecWait '"gem install rails -v2.3.8" $0'

$0 には何も表示されませんでしたが、gem リストは空のままでした。

何か助けはありますか?

ありがとう、テルモ・カルドーゾ

編集: まだ問題があります。私は今使用しています:

nsExec::ExecToLog '"$INSTDIR\runtime\ruby\bin\gem.bat" install --ignore-dependencies --no-rdoc --no-ri rails -v=2.3.8'

そしてその生成:

could not find a valid gem '-v=2.3.8'

そして最新のものをインストールします。明らかに、何かがパラメーターに渡されています。インストーラーの外部でコマンドを実行すると、想定どおりに機能します。

何か助けはありますか?

4

1 に答える 1

0

正しい構文はExecWait '"c:\full\path\to\program.exe" param1 "space param" param3' $0. 機能するにはExecWait '"gem" ...'、gem.exe がCreateProcessによって検索されるパスにある必要があります ...

于 2013-04-05T17:29:45.913 に答える