【发布时间】:2015-07-03 08:21:06
【问题描述】:
我使用 MsiEnumProducts() 来查找所有已安装的 MS Office 产品并检查它们的版本。如果我有 Office 2013 Professional Plus 版本,它可以正常工作。我收到了已安装的办公产品的完整列表,如 word、excel、outlook 等,以及正确的产品代码 GUID。 https://support.microsoft.com/en-us/kb/2786054
GUID 如下所示:
- Microsoft Office Professional Plus 2013 - {90150000-0011-0000-1000-0000000FF1CE}
- Microsoft Word MUI(英语)2013 - {90150000-001B-0409-1000-0000000FF1CE}
但如果我在 PC 上安装了家庭版和商业版,则 MsiEnumProducts() 找不到已安装的 Office。该功能提供的唯一已安装的办公产品是:
- Office 15 即点即用可扩展性组件 - {90150000-008C-0000-1000-0000000FF1CE}
- Office 15 即点即用本地化组件 - {90150000-008C-0407-1000-0000000FF1CE}
- Office 15 即点即用许可组件 - {90150000-007E-0000-1000-0000000FF1CE}
但 Office 2013 家庭版和商业版 GUID 应如下所示 {90150000-0013-0000-1000-0000000FF1CE}。
我有 Win 8.1 x64,Office x64,程序是在 Win32 和 x64 下构建的。
你怎么看这个问题?
【问题讨论】:
标签: c++ winapi windows-installer ms-office office-2013