如何检查是否安装了ms office产品及VC ++的版本?

时间:2010-10-16 09:40:32

标签: visual-c++ ms-office

我想查找是否已安装ms office及其版本... 我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

由于您已将其标记为visual C ++,我假设您希望在C ++中执行此操作 一种方法是解析以下注册表项 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

例如 枚举此密钥并查看值displayname是否包含Microsoft Office Excel MUI (English) 2007 您还可以在其他值中找到版本号,例如versionversionmajorverisonminor

仅供参考,您可以使用此注册表项找出几乎所有“安装”在您系统上的软件。

这仅适用于32位安装。对于64位安装,您需要在注册表节点WOW6432Node中找到类似的树结构。

答案 1 :(得分:0)

Microsoft Office Version Detector

  

它是如何运作的?

     

该代码基于过时的Microsoft知识库文章Q247985(知识库文章中的代码不适用于Office 2003或2007)。代码查找特定的注册表项,该注册表项包含每个应用程序的版本(例如,HKEY_CLASSES_ROOT / Excel.Application / CurVer for Excel),其中包含以字符串编码的版本(在我的计算机上为“Excel.Application.11”)。然后将内部Microsoft版本号(即“Excel.Application.11”末尾的“11”)映射到您将更熟悉的外部“营销”名称(例如,内部版本“11”是通常称为“Office 2003”。)