私はかなり長いCustomActionをwixインストーラで使用していますが、操作が実行されている間は 'Status:...'進捗状況と内部状況の更新 私はカスタムアクションのプログレスステムを設定する方法を知っていますが、私が望むのは、カスタムアクションの実行中にプログレステキストを動的に変更することです。WiX:CustomAction中にステータステキストを動的に変更する
5
A
答えて
8
遅延カスタムアクションは、MsiProcessMessage関数を呼び出すことができます。 INSTALLMESSAGE_ACTIONSTART、INSTALLMESSAGE_ACTIONDATA、およびINSTALLMESSAGE_PROGRESSを使用して、UIまでのメッセージをパブリッシュできます。
カスタムアクションを小さなカスタムアクションに分割し、ProgressText(ActionTextテーブル)を使用してインストールのさまざまな段階を記述することもできます。
CAがあまりにも多くの作業を行うと、ロールバックを正しく計画することが難しい場合があります。
using (Record record = new Record(0))
{
record.SetString(0, "foo");
session.Message(InstallMessage.ActionData, record);
}
usingステートメントは、基礎となるMSIハンドルを解放するために、レコードを配置する:
Obtaining Context Information for Deferred Execution Custom Actions
は、C#/ DTFを使用して、それはのようになります。レコードのフィールド数とデータの設定方法は、ActionTextテーブルで定義されたテンプレートに依存します。
0
クリスは正しくCAからActionData
にメッセージを送信する方法を説明しましたが、あなたでは、InstallShieldを使用している場合、あなたはSetupProgress
ダイアログのラベルを作成し、それにActionData
テキストイベントをサブスクライブすることを確認しました。つまり、ラベルにActionText
イベントを作成するだけでは、ActionTextテーブルで作成したCA記述が表示されるだけでは不十分です。
関連する問題
- 1. 動的に2つのチェックボックスを動的に変更するランタイム中にForeColor
- 2. ランタイム中にIonic Cordova TabRootを動的に変更する
- 3. TSQL + C#:使用中のデータベースを動的に変更する
- 4. 数値の中にPythonキーの名前を動的に変更
- 5. 動的にエンティティプロパティを動的に変更する方法
- 6. FlaskレスポンスにHTTPステータステキストを設定する
- 7. 変更ボタンクラスを動的に
- 8. 変更CSSを動的に
- 9. uitableviewフッターを動的に変更する
- 10. CSSを動的に変更する
- 11. java3d SceneGraphを動的に変更する
- 12. filterToolbarオプションを動的に変更する
- 13. 動的にonclickメソッドを変更する
- 14. Umbracoページテンプレートを動的に変更する
- 15. Polymer:動的にスタイルシートを変更する
- 16. 動的にQuillプレースホルダーを変更する
- 17. 動的にテキストを変更するqlabel
- 18. GridViewテンプレートフィールドを動的に変更する
- 19. yii2データベースを動的に変更する
- 20. JWTサブジェクトフィールドを動的に変更する
- 21. row_formatを動的に変更する
- 22. スロットルパラメータを動的に変更する
- 23. GridViewアイテムテンプレートを動的に変更する
- 24. スプリングスプリングを動的に変更する
- 25. Java - 動的にロギングレベルを変更する
- 26. ComboFieldEditor。値を動的に変更する
- 27. 動的に幅を変更するSelect2
- 28. ズームを動的に変更する
- 29. 動的にappcacheを変更する
- 30. iOS - フォントサイズを動的に変更する
ありがとうございます。私はこれが私が探していたものだと信じています。カスタムアクションはC#で書かれていますが、おそらくDTFの説明がありますか? –
DTFドコのすべてのクラスとメンバは、基礎となるMSI APIの対応を参照しており、ヘルプファイルの検索タブを使用して見つけることができます。サンプルを提供するために私の答えを更新します。 (あなたは、あなたがCAをプログラミングしているものについて言及していませんでした) –
ありがとう。魅力的な作品:) –