Ms word Word 2013的VSTO Word模板WIX安装程序工作不正常
我开发了一个基于VSTO的Word模板和一个基于WIX的安装程序。 一般来说,安装程序工作正常,但在Windows8.1上安装Office 2013 32位除外。 由于som未知原因,Office 201332安装在C:\Program Files,并且相关注册表项正确指向它。 在执行Word模板的msi包期间,注册表项似乎被修改,如msiexec的日志文件所示:Ms word Word 2013的VSTO Word模板WIX安装程序工作不正常,ms-word,wix,windows-installer,vsto,Ms Word,Wix,Windows Installer,Vsto,我开发了一个基于VSTO的Word模板和一个基于WIX的安装程序。 一般来说,安装程序工作正常,但在Windows8.1上安装Office 2013 32位除外。 由于som未知原因,Office 201332安装在C:\Program Files,并且相关注册表项正确指向它。 在执行Word模板的msi包期间,注册表项似乎被修改,如msiexec的日志文件所示: MSI (c) (18:98) [09:10:34:954]: WIN64DUALFOLDERS: 'C:\Program File
MSI (c) (18:98) [09:10:34:954]: WIN64DUALFOLDERS: 'C:\Program Files (x86)\' will substitute 17 characters in 'C:\Program Files\Microsoft Office 15\Root\Office15\WINWORD.EXE' folder path. (mask argument = 0, the folder pair's iSwapAttrib member = 0).
因此,找不到Winword.exe,安装程序将停止。
我正在使用此WIX代码检查是否安装了Word 2010或更新版本:
<Property Id="WORDEXEVERSION"
Secure="yes">
<RegistrySearch Id="RegSearch_WORDEXE"
Root="HKLM"
Key="SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Winword.exe"
Type="file">
<FileSearch Name="WINWORD.EXE"
MinVersion="14.0.0.0" />
</RegistrySearch>
</Property>
<Condition Message="Word 2010 or newer is required."><![CDATA[Installed OR WORDEXEVERSION]]></Condition>
在其他装有Win 8.1和Office 201332Bit的机器上,Office安装在C:\Program Files x86上,一切正常。
有人知道为什么Office 2013可能安装到明显错误的文件夹,或者如何使msiexec按预期运行吗?用户可能会强制安装到那里,这可能是可能的,或者实际系统可能已就地升级到64位操作系统,因此程序文件中的内容将保留在那里 检测的目的是什么?查看是否安装了Word?我这样问是因为我似乎记得模板在某个地方有自己的文件夹,你可以在那里安装模板