你目前正处于脱机状态,正在等待 Internet 重新连接

如何查找 Office 2000、Office XP 或 Office 2003 应用程序的安装路径

针对 Office 2003 的支持已终止

Microsoft 已于 2014 年 4 月 8 日终止了针对 Office 2003 的支持。该更改已影响到您的软件更新和安全选项。 了解这一措施对于您的含义以及如何继续保持受保护状态。

概要
本文阐释如何使用 Windows Installer 查找 Microsoft Office、Office XP 或 Office 2003 应用程序的安装路径。
更多信息
版本高于 2000 的 Microsoft Office 在安装时不会在快捷方式链接中包含路径信息。这样做的目的是可以使用“首次使用时运行”选项。当使用此选项时,快捷方式将显示,但应用程序将不会安装在硬盘上。当您首次单击该快捷方式时,应用程序将被安装。

您可以使用 Windows Installer 来获取所安装的 Office 应用程序的路径。按照下面给出的步骤操作,可以创建一个能够报告所安装的 Office 应用程序的目录的控制台应用程序。

生成示例

  1. 在 Visual C++ 中创建一个空的控制台应用程序。
  2. 创建一个名为 main.cpp 的新文件,然后在代码窗口中粘贴下面的代码:
    #include <windows.h>#include <msi.h>#include <ostream.h>const char *Word = "{CC29E963-7BC2-11D1-A921-00A0C91E2AA2}";const char *Excel = "{CC29E96F-7BC2-11D1-A921-00A0C91E2AA2}";const char *PowerPoint = "{CC29E94B-7BC2-11D1-A921-00A0C91E2AA2}";const char *Access = "{CC29E967-7BC2-11D1-A921-00A0C91E2AA2}";const char *Office = "{00000409-78E1-11D2-B60F-006097C998E7}";int main(void){	DWORD size = 300;	INSTALLSTATE installstate;	char *sPath;	sPath = new char[size];        installstate = MsiGetComponentPath(        Office,Word,sPath,&size);	if ((installstate == INSTALLSTATE_LOCAL) ||             (installstate == INSTALLSTATE_SOURCE)) 	  cout << "Installed in: " << sPath << endl;	delete sPath;	return 0;}					
  3. 单击项目菜单,然后单击设置以显示项目设置对话框。
  4. 单击链接选项卡,然后在对象/库模块列表中添加 msi.lib
  5. 运行该程序。它将显示安装 Microsoft Word 的文件路径。

    注意:代码中还包含与 Word、Excel、PowerPoint 和 Access 关联的 GUID。要查找另一个 Office 应用程序的路径,请将该应用程序的名称作为 MsiGetComponentPath 函数的第二个参数进行传递。

    要查找 Office XP 应用程序的路径,请使用下面的内容替换上述常量:
    const char *Word = "{8E46FEFA-D973-6294-B305-E968CEDFFCB9}";const char *Excel = "{5572D282-F5E5-11D3-A8E8-0060083FD8D3}";const char *PowerPoint = "{FC780C4C-F066-40E0-B720-DA0F779B81A9}";const char *Access = "{CC29E967-7BC2-11D1-A921-00A0C91E2AA3}";const char *Office = "{20280409-6000-11D3-8CFE-0050048383C9}";					
    要查找 Office 2003 应用程序的路径,请使用下面的内容替换上述常量:
    const char *Word = "{1EBDE4BC-9A51-4630-B541-2561FA45CCC5}";const char *Excel = "{A2B280D4-20FB-4720-99F7-40C09FBCE10A}";const char *PowerPoint = "{C86C0B92-63C0-4E35-8605-281275C21F97}";const char *Access = "{F2D782F8-6B14-4FA4-8FBA-565CDDB9B2A8}";const char *Office = "{90110409-6000-11D3-8CFE-0150048383C9}";					
参考
您可以从以下位置下载 Windows Installer SDK(它包含 MSI.LIB 文件): 有关 Office 自动化的更多信息,请访问以下 Microsoft Office Development 支持中心网站:

属性

文章 ID:234788 - 上次审阅时间:03/31/2006 02:55:36 - 修订版本: 5.6

Microsoft Office Word 2003, Microsoft Office Access 2003, Microsoft Office PowerPoint 2003, Microsoft Office Excel 2003, Microsoft Excel 2000 标准版, Microsoft Access 2000 标准版, Microsoft PowerPoint 2000 标准版, Microsoft Word 2000 标准版, Microsoft Access 2002 标准版, Microsoft Excel 2002 标准版, Microsoft PowerPoint 2002 标准版, Microsoft Word 2002 标准版

  • kbhowto KB234788
反馈