0

機能のパッチ リリースでカスタム アクションに値を渡す必要があります。私はいくつかの調査を行い、次のことを行いました。

<CustomAction Id="CustomAction1" Property="customaction2" Value="Value1" />

<CustomAction Id="customaction2" BinaryKey="Binary.dll" 
                  DllEntry="Functionname" Impersonate="no"
                  Execute="immediate" Return="check" />

また、次のように installExecuteSequence を更新しました。

<Custom Action='CustomAction1' After="InstallFinalize"><![CDATA[PATCH]]></Custom>
<Custom Action='customaction2' After="CustomAction1"><![CDATA[PATCH]]></Custom>

また、componentref を patch.wxs ファイルに追加しました。

<CustomActionRef Id="CustomAction1.PackageGuid"/>
<CustomActionRef Id="customaction2.PackageGuid"/>

このパラメーター値にアクセスするために、customaction "Functionname" で次のコードを試しました。

var value = session.Property["CustomActionData"];

「値」は空です。デバッグを行ったところ、以下のコードから値を取得していることがわかりました。

var value = session.Property["customaction2.PackageGuid"];

packageGuids を使用してプロパティにアクセスする例も見たことがありません。最初のアプローチ(「CustomActionData」を使用)がうまくいかない理由がわかりません。私が欠けているものを教えてもらえますか?

また、packageGuids を使用しても害はありますか? そうでない場合は、この方法で続行する予定です。他のstを試す必要がある場合はお知らせください

4

0 に答える 0