0

Shield 2009 Premier、基本の MSI プロジェクトをインストールします。カスタム アクションのプロパティは次のとおりです。

  1. タイプ: マネージ アセンブリでパブリック メソッドを呼び出す
  2. 場所:バイナリテーブルに格納
  3. クラスとメソッド名を指定すると、メッセージボックスが表示され(呼び出されたことを確認できるように)、13の整数値が返されます。[返品プロパティを選択していない、何を選択すればよいかわからない]
  4. リターン処理: 同期 (終了コードを確認)
  5. スクリプト内実行: システム コンテキストでの遅延実行
  6. インストール実行シーケンス: インストール後初期化
  7. インストール実行条件: NOT REMOVE

インストール中にパブリックメソッドでメッセージボックスが表示されますが、インストールは終了しませんか? カスタム アクション (マネージ アセンブリのパブリック メソッド) の戻り値の型からインストールを終了する方法は?

4

1 に答える 1

0

関数の戻り値の型がintor uint(またはInt32or UInt32) であること、およびカスタム シグネチャを使用していないことを確認してください。この組み合わせにより、戻り値は Windows インストーラーに直接渡され、1602、1603 などの値はhttp://msdn.microsoft.com/en-us/library/aa368072(VS.85 .aspx . カスタム シグネチャまたは戻り値のプロパティ、または単純な整数以外の戻り値の型のいずれかを使用すると、Windows インストーラーは常に渡されERROR_SUCCESSます。終了がどのように見えるか (特にログで) を正確に気にしない場合、例外をスローすると、ERROR_INSTALL_FAILUREWindows インストーラーに渡されます。

于 2009-08-03T14:49:35.353 に答える