私は、InstallShieldインストーラのsetup.exeファイルを使用して、私のアプリケーションをサイレントインストールします。今私はいくつかのコマンドライン引数でsetup.exeを起動したいと思います。その引数は、私が成功して実行するために作成したEXEカスタムアクションで利用できるはずです。セットアップファイルを呼び出す際に、コマンドラインからデータを全部渡すことができ、それを私のexeの中で使うことができます。 exeはC#で書かれたコンソールアプリです。installshieldインストーラからカスタムアクションにコマンドライン引数を渡すexe
1
A
答えて
-1
私はこれがMSIベースのプロジェクトであることを理解していますが、.exeカスタムアクションは遅延実行とみなされます。
何をすべきことはこれです:あなたのインストーラで
- 、あなたは.exeファイル(例えば
ServerName
、ServerPort
)のために必要ないくつかのカスタムMSIのプロパティを定義 - はタイプ「設定のカスタムアクションを作成します。プロパティ '。 プロパティ名は、exeファイル(たとえば
RunMyExe
)を実行するカスタムアクションの名前にする必要があります。 プロパティ値は、カスタムプロパティの連結リストにする必要があります。[ServerName];[ServerPort]
。 InstallInitializeの後にこのカスタムアクションを実行します。あなたの.exeのカスタムアクション(RunMyExe)で - 、
- があなたのexeファイルのプログラムは、コマンドラインを取得する持っているあなたのexeファイルのプログラムにコマンドラインとして
[CustomActionData]
を渡し、それが - 起動を必要とするデータを得るためにそれを分割ステップ1で定義したカスタムプロパティを設定しているときにsetup.exeを実行します。
setup.exe /v"ServerName=test-srv ServerPort=67000"
何が起こるかは、あなたが(そのようなコマンドラインから供給されたものなど)exernalプロパティを使用することはできません繰延カスタムアクションで、あなたがそのようなCustomActionDataなどの内部のものにのみアクセスできる、ということです。ここでのトリックは、アクションの名前を持つプロパティ(上記の例ではRunMyExe)が存在する場合、内部のCustomActionDataプロパティがその値を取得することです。
関連する問題
- 1. CMD Line - Cコードからコマンドラインに引数を渡す
- 2. WiXバンドルからMSIにコマンドライン引数を渡す
- 3. コマンドラインの引数をantに渡す
- 4. RSpecにコマンドライン引数を渡す
- 5. kubernetesでコマンドライン引数を渡すには?
- 6. SMLスクリプトにコマンドライン引数を渡す
- 7. Eclipseのコマンドライン引数にシステムコマンドを渡す
- 8. pom.xmlのプロパティとしてMavenからのコマンドライン引数を渡す
- 9. ハイフンを含むコマンドライン引数を渡す
- 10. コマンドライン引数を使用するpythonからexeファイルを作成する
- 11. XMLカスタムアクションのWindowsインストーラ
- 12. 渡すコマンドライン引数それが
- 13. InstallShieldがアンインストールのカスタムアクションを実行する
- 14. vvenprojを構築中にdevenvからC#プロジェクトにコマンドライン引数を渡す
- 15. Netbeans 8.0からEXEインストーラを作成
- 16. .exeインストーラから特定のexeファイルを実行する方法
- 17. InstallShield(基本MSIプロジェクト)のユーザー対話からカスタムアクションを実行
- 18. バッチスクリプト内の関数に引数(コマンドライン引数ではない)を渡す方法
- 19. Jython 2.5.1:Javaから__main__への呼び出し - コマンドライン引数を渡すには?
- 20. WebDriverIO Seleniumがconfig.jsファイルからChromeにコマンドライン引数を渡します
- 21. あるpythonモジュールから別のpythonモジュールにコマンドライン引数を渡す方法
- 22. InstallShield LE:カスタムアクションでRegOpenKeyExが失敗する
- 23. C#インストーラのカスタムアクション - Windows 7の
- 24. Argparse - 引数なしのカスタムアクション?
- 25. コマンドライン引数からウィンドウを作る
- 26. .exeに渡された引数をラップされた.batスクリプトに渡す方法
- 27. コマンドラインでGrailsに引数を渡すには?
- 28. fork()の後に子プロセスにコマンドライン引数を渡す方法
- 29. スタックexecにコマンドライン引数を渡すには
- 30. IDLEを使ってPythonプログラムにコマンドライン引数を渡す?
遅延されたexeカスタムアクションでも、コマンドラインのどのプロパティも参照できることに注意してください。 –
私が覚えている限り、パブリックプロパティのみがコマンドラインでMSIに渡すことができます。だから、あなたの提案はうまくいかないでしょう。 – Vadim
"CustomActionData"は、コマンドラインで渡すことができるプロパティではありません。これは遅延カスタムアクションのコンテキスト内に存在し、カスタムアクション自体の名前にマップされます。 –