Я должен передать значение своему настраиваемому действию в выпуске патча для своей функции. Я провел небольшое исследование и сделал следующее:
<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>
Я также добавил componentrefs в файл patch.wxs.
<CustomActionRef Id="CustomAction1.PackageGuid"/>
<CustomActionRef Id="customaction2.PackageGuid"/>
Чтобы получить доступ к значению этого параметра, я попробовал следующий код в своем имени «Functionname»:
var value = session.Property["CustomActionData"];
«Значение» пусто. Я сделал некоторую отладку и обнаружил, что получаю значение из кода ниже:
var value = session.Property["customaction2.PackageGuid"];
Я не видел ни одного примера, который бы также обращался к свойствам с помощью packageGuids. Я не уверен, почему первый подход (с использованием «CustomActionData») не работает для меня.
Ребята, дайте мне знать, что мне не хватает?
Кроме того, есть ли вред при использовании с packageGuids? Если нет, я планирую продолжать в том же духе. Пожалуйста, дайте мне знать, если вы хотите, чтобы я попробовал любой другой st