我应该搜索哪些组件ID来检测Office 2010 PIA是否已安装

时间:2010-05-25 10:22:48

标签: installer ms-office office-2010

我正在为Office 2010创建一个插件,需要在安装时检测是否已安装Office 2010 PIA。

我已经在2003年和2007年完成了这项工作,但找不到2010年的组件ID,有人知道它们是什么吗?

感谢, 艾德

2 个答案:

答案 0 :(得分:13)

从下面的列表中搜索适用于您需要的办公室组件的PIA(主互操作程序集)的组件ID:

{EA7564AC-C67D-4868-BE5C-26E4FC2223FF}   Excel
{4153F732-D670-4E44-8AB7-500F2B576BDA}   InfoPath
{1D844339-3DAE-413E-BC13-62D6A52816B2}   Outlook
{EECBA6B8-3A62-44AD-99EB-8666265466F9}   PowerPoint
{3EA123B5-6316-452E-9D51-A489E06E2347}   Visio
{8B74A499-37F8-4DEA-B5A0-D72FC501CEFA}   Word
{957A4EC0-E67B-4E86-A383-6AF7270B216A}   Project
{B2279272-3FD2-434D-B94E-E4E0F8561AC4}   Forms 2.0
{011B9112-EBB1-4A6C-86CB-C2FDC9EA7B0E}   Graph
{7102C98C-EF47-4F04-A227-FE33650BF954}   Smart Tag
{64E2917E-AA13-4CA4-BFFE-EA6EDA3AFCB4}   Office Shared

E.g。如果您正在编写Word加载项,那么您只需要使用GUID检查PIA {8B74A499-37F8-4DEA-B5A0-D72FC501CEFA}

来自here

微软最近分别发布了2010年的PIA。可用here

如果您需要支持Office 2013,则会在此处记录组件ID: Office 2013 PIA component Ids

答案 1 :(得分:1)

如果您的目标是.NET Framework 4及更高版本,则无需单独安装PIA或检查已安装PIA的版本。 Check this article

  

编译面向.NET Framework 4的加载项项目时,   默认情况下所引用的所有PIA类型的类型信息   加载项代码嵌入在加载项程序集中。在运行时,这个   类型信息用于解析对底层COM类型的调用,   而不是依赖PIA中的类型信息。

只需检查您的项目,Microsoft.Office.Interop.Excel的引用是否具有正确的版本,并EmbedInteropTypes设置为true