我遇到了来自wix的奇怪行为。我创建了安装,当我想测试它时,一切正常,我的对话框显示......但是当我点击安装时,它看起来好像正在安装但是在三分之一的安装文件消息框中弹出说:安装MYPRODUCT需要.NET Framework 4!
我的第一个想法是我的启动条件不好......但仍然是启动条件而不是安装或什么......所以我删除了它仍然存在问题...
然后我认为这可能是因为我在C#中的自定义操作,所以我也删除了它,但问题仍然存在。任何的想法? 感谢
和btw。启动条件(netframework)工作正常...
编辑:如果我设置InstallScope =“perUser”就可以了......
日志:
Action start 12:54:33: INSTALL.
MSI (s) (A0:F4) [12:54:33:505]: Running ExecuteSequence
MSI (s) (A0:F4) [12:54:33:505]: Doing action: FindRelatedProducts
Action 12:54:33: FindRelatedProducts. Searching for related applications
Action start 12:54:33: FindRelatedProducts.
MSI (s) (A0:F4) [12:54:33:507]: Skipping FindRelatedProducts action: not run in maintenance mode
Action ended 12:54:33: FindRelatedProducts. Return value 0.
MSI (s) (A0:F4) [12:54:33:507]: Doing action: AppSearch
Action 12:54:33: AppSearch. Searching for installed applications
Action start 12:54:33: AppSearch.
AppSearch: Property: FM70HOME, Signature: FM70_HOME_PathRegistry
MSI (s) (A0:F4) [12:54:33:508]: Note: 1: 2262 2: Signature 3: -2147287038
MSI (s) (A0:F4) [12:54:33:508]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE32\SOFTWARE\Adobe\FrameMaker\7.0 3: 2
AppSearch: Property: FM71HOME, Signature: FM71_HOME_PathRegistry
MSI (s) (A0:F4) [12:54:33:509]: Note: 1: 2262 2: Signature 3: -2147287038
MSI (s) (A0:F4) [12:54:33:509]: PROPERTY CHANGE: Adding FM71HOME property. Its value is 'C:\Program Files (x86)\Adobe\FrameMaker7.1'.
AppSearch: Property: FM72HOME, Signature: FM72_HOME_PathRegistry
MSI (s) (A0:F4) [12:54:33:509]: Note: 1: 2262 2: Signature 3: -2147287038
MSI (s) (A0:F4) [12:54:33:509]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE32\SOFTWARE\Adobe\FrameMaker\7.2 3: 2
AppSearch: Property: FM80HOME, Signature: FM80_HOME_PathRegistry
MSI (s) (A0:F4) [12:54:33:510]: Note: 1: 2262 2: Signature 3: -2147287038
MSI (s) (A0:F4) [12:54:33:510]: PROPERTY CHANGE: Adding FM80HOME property. Its value is 'C:\Program Files (x86)\Adobe\FrameMaker8\'.
AppSearch: Property: FM10HOME, Signature: FM10_HOME_PathRegistry
MSI (s) (A0:F4) [12:54:33:510]: Note: 1: 2262 2: Signature 3: -2147287038
MSI (s) (A0:F4) [12:54:33:510]: PROPERTY CHANGE: Adding FM10HOME property. Its value is 'C:\Program Files (x86)\Adobe\AdobeFrameMaker10\'.
AppSearch: Property: NETFRAMEWORK45, Signature: NetFramework45
MSI (s) (A0:F4) [12:54:33:510]: Note: 1: 2262 2: Signature 3: -2147287038
Action ended 12:54:33: AppSearch. Return value 1.
MSI (s) (A0:F4) [12:54:33:511]: Doing action: LaunchConditions
Action 12:54:33: LaunchConditions. Evaluating launch conditions
Action start 12:54:33: LaunchConditions.
Installation of eAIP.wiz@rd requires .NET Framework 4!
MSI (s) (A0:F4) [12:54:40:586]: Product: Product -- Installation of Product requires .NET Framework 4!
Action ended 12:54:40: LaunchConditions. Return value 3.
Action ended 12:54:40: INSTALL. Return value 3.
我也不知道为什么要检查NetFramework45 ... 我的发布条件是:
<Condition Message="Installation of Product requires .NET Framework 40 full!">NETFRAMEWORK40FULL OR REMOVE ~= "ALL"</Condition>
<Condition Message="Installation of Product requires Framework!">NOT WF_INSTALLED = "NOT INSTALLED" OR REMOVE ~= "ALL"</Condition>
<Condition Message="Can't find any of Adobe Framemaker 10.0, 8.0, 7.2, 7.1, 7.0 installation.! Product would not be working.">FM10HOME OR FM80HOME OR FM72HOME OR FM71HOME OR REMOVE ~= "ALL"</Condition>
为什么它会写入需要.Net Framework 4的消息,当第一次启动条件通过时......以及我已经安装了net framework 4?
答案 0 :(得分:1)
好吧我可能找到了解决方案。
整个问题记录在我的日志中:
MSI (c) (B8:58) [12:54:23:788]: Doing action: FindRelatedProducts
Action 12:54:23: FindRelatedProducts. Searching for related applications
Action start 12:54:23: FindRelatedProducts.
FindRelatedProducts: Found application: xxx
MSI (c) (B8:58) [12:54:23:788]: PROPERTY CHANGE: Adding WIX_UPGRADE_DETECTED property. Its value is 'xxx'.
MSI (c) (B8:58) [12:54:23:788]: PROPERTY CHANGE: Adding MIGRATE property. Its value is 'xxx'.
FindRelatedProducts: Found application: xxx
告诉我我已经安装了那个产品......至少有一些注册表必须在那里...所以我改变了产品guid并升级..它的工作原理......但它对我来说仍然很奇怪,为什么呢告诉我,网络框架4在开始时以启动条件通过时会丢失。