Определение папки, в которую было установлено приложение из пакета Office 2000, Office XP или Office 2003

Переводы статьи Переводы статьи
Код статьи: 234788 - Vizualiza?i produsele pentru care se aplic? acest articol.
Данная статья была ранее опубликована под номером RU234788
Развернуть все | Свернуть все

В этой статье

Аннотация

Данная статья содержит описание процесса определения с помощью установщика Windows папки, в которую было установлено приложение из пакета Office 2000, Office XP или Office 2003.

Дополнительная информация

Ярлык программы из пакета Microsoft Office версии более поздней, чем Office 2000, не содержит сведений о папке, в которой установлена программа. Благодаря этому возможна установка «при первом вызове». В случае выбора этого способа появляется только ярлык, а установка самого приложения происходит только при первом его запуске с помощью ярлыка.

Папку, в которую было установлено приложение Office, можно определить с помощью установщика Windows. Ниже приведены инструкции по созданию соответствующего консольного приложения.

Пример приложения

  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. Для открытия диалогового окна свойств проекта выберите команду Settings в меню Project.
  4. Откройте вкладку Link и добавьте файл msi.lib в список модулей Object/library.
  5. Запустите программу. В результате ее выполнения будет отображено имя папки, в которой установлена система Microsoft Word.

    Примечание. В приведенный пример программного кода включены коды GUID, сопоставленные Word, Excel, PowerPoint и Access. Для определения папки, в которой установлено другое приложение, передайте функции 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, можно загрузить со следующего веб-узла корпорации Мicrosoft:
http://www.microsoft.com/downloads/details.aspx?FamilyID=e96f8abc-62c3-4cc3-93ad-bfc98e3ae4a3&DisplayLang=en
Для получения дополнительных сведений об автоматизации обратитесь на веб-узел Microsoft Office Development Support:

http://support.microsoft.com/support/officedev/

Свойства

Код статьи: 234788 - Последний отзыв: 30 мая 2006 г. - Revision: 3.4
Информация в данной статье относится к следующим продуктам.
  • Microsoft Office Word 2003
  • Microsoft Office Access 2003
  • Microsoft Office PowerPoint 2003
  • Microsoft Office Excel 2003
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Access 2000 Standard Edition
  • Microsoft PowerPoint 2000 Standard Edition
  • Microsoft Word 2000 Standard Edition
  • Microsoft Access 2002 Standard Edition
  • Microsoft Excel 2002 Standard Edition
  • Microsoft PowerPoint 2002 Standard Edition
  • Microsoft Word 2002 Standard Edition
Ключевые слова: 
kbhowto KB234788

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com