Как проверить, установлен ли продукт MS Office и его версия VC ++? - PullRequest
1 голос
/ 16 октября 2010

Я хочу узнать, установлен ли MS Office и версия ... как я могу это сделать?

Ответы [ 2 ]

0 голосов
/ 16 октября 2010

Детектор версий Microsoft Office

Как это работает?

Код основан на устаревшей статье базы знаний Майкрософт Q247985 (код в статье базы знаний не работает для Office 2003 или 2007).Код ищет определенный раздел реестра, который содержит версию для каждого приложения (например, HKEY_CLASSES_ROOT / Excel.Application / CurVer для Excel), которая содержит версию, закодированную в строку («Excel.Application.11» на моем компьютере).Внутренний номер версии Microsoft (то есть «11» в конце «Excel.Application.11») затем сопоставляется с внешним «маркетинговым» именем, с которым вы будете более знакомы (например, внутренняя версия «11»более известный как «Office 2003»).

0 голосов
/ 16 октября 2010

Поскольку вы пометили его как визуальный C ++, я предполагаю, что вы хотите сделать это в C ++.
Одним из способов является анализ следующего раздела реестра. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

Например, Перечислите этот ключ и выясните, содержит ли значение displayname Microsoft Office Excel MUI (English) 2007 Вы также можете найти номер версии в других значениях, таких как version, versionmajor, verisonminor

К вашему сведению, вы можете использовать этот раздел реестра, чтобы найти практически любое программное обеспечение, которое «устанавливается» в вашей системе.

Это только для 32-битной установки. Для 64-битной установки вам нужно найти похожую древовидную структуру внутри узла реестра WOW6432Node.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...