尝试使用InstallShield 2016中的WIX DTF自定义操作dll中的函数。该过程与在"托管代码中执行延迟自定义操作相同。键入自定义操作,但对于DTF访问,必须创建一个"新的MSI DLL"键入自定义操作。自定义操作中的属性名称必须与引用的自定义操作dll中的函数名称匹配。如果它们不匹配,CustomActionData将为空。
对于自定义操作类型,"设置属性"必须首先执行action,它设置CustomActionData的值。然后,执行与自定义操作关联的函数,并检索以前在CustomActionData中设置的值。
我的属性和我的函数具有相同的名称(SetRegionalServerUrl),我调用了一个" set属性"首先是自定义操作,但当自定义操作的函数尝试读取其内容时,CustomActionData为空。
使用"托管代码"输入自定义动作dll,所以我希望有人可以建议尝试,或者指出我错过了什么。
感谢。
答案 0 :(得分:0)
如果在延迟上下文中执行了操作,则常规变量不可用。你必须将它们全部包装到CustomActionData
中:
http://helpnet.flexerasoftware.com/isxhelp22/helplibrary/ActionExecutionOptions.htm
您要做的是将CustomActionData
定义为等于原始属性的排序规则,然后在实际操作中对其进行解析。