Need More Help?Contact a Support Professional by Email, Online, or Phone. |
Search Support(KB)
Article Translations
Check for Updates
|
Downloads
|
Technical Communities
|
Additional Resources
|
Related Office 2003 Web Sites
|
Audio/Video Resources
Upcoming Support WebCasts | |
Past Support WebCasts | |
Downloadable Support WebCasts | |
Voice of Support PodCasts |
Related Troubleshooting - Setup
|
INFO: Office Automation When Multiple Versions of Office Are Installed
Article ID | : | 292491 |
Last Review | : | April 11, 2006 |
Revision | : | 5.1 |
This article was previously published under Q292491
SUMMARY
This article discusses and explains how COM (Component
Object Model) determines which version of an Office application is loaded when
you use Office Automation.
MORE INFORMATION
When a COM server is first installed or registered, it adds
entries to the registry that correspond with the server's programmatic
identifier (PROGID) and class identifier (CLSID). These registry settings allow
COM to retrieve information about a server, such as where the server is
installed, and enables you to automate the server. To illustrate, Excel 2000
has the Excel.Application version-independent PROGID and the
{00024500-0000-0000-C000-000000000046} CLSID. COM related registry entries for
Excel 2000 include the following:
When you have multiple versions of Office installed and you use Automation to one of the Office servers, the version that loads is governed by these settings in the registry. For the most part, the rule is that the last version that was installed is the version that loads with Automation; however, Word exhibits behavior that differs from the other Office applications. The different behaviors for each of the Office Automation servers are described in the following sections.
Access, Excel, and PowerPoint versions 97, 2000, 2002, and 2003
Access, Excel, and PowerPoint modify these registry keys during Office setup. When you automate one of these applications, the version that is loaded is the version that was last installed.
Word 97
Word 97 modifies these registry keys during Office setup. When you automate Word, if either Word 2000 or Word 2002 are installed, Word 97 loads only if it was the last version installed.
Word 2000, 2002, and 2003
Word 2000, 2002, and 2003 modify these registry keys during Office setup and each time Word starts. When you automate Word, the version that is loaded is the version that was last started by the user or the version that was last installed.
Additional Notes
A common perception for Office Automation when you have multiple versions of Office installed on a system is that you can dictate which version loads by using a specific version-dependent PROGID (for example, that "Excel.Application.9" loads Excel 2000, "Excel.Application.10" loads Excel 2002 and "Excel.Application.11" loads Office Excel 2003). However, this is not correct. Excel 2000, 2002, and 2003 share the same CLSID, so the version that loads with these PROGIDs depends solely on which version was last installed.
For testing purposes, developers can force a specific version of an Office application to register by using the /regserver switch on the command line. For example, to force an Excel version to register without running setup, you can use a command line that resembles the following:
For additional information about running multiple Office versions, or side-by-side Office installations, click the following article number to view the article in the Microsoft Knowledge Base:
HKEY_CLASSES_ROOT\Excel.Application\CLSID
Default Value: {00024500-0000-0000-C000-000000000046}
HKEY_CLASSES_ROOT\CLSID\{00024500-0000-0000-C000-000000000046}\LocalServer32
Default Value: C:\PROGRA~1\MICROS~1\Office\EXCEL.EXE /automation
By following the registry keys from the PROGID to the CLSID, COM
can learn where the Excel executable file is installed and start it for
Automation. Default Value: {00024500-0000-0000-C000-000000000046}
HKEY_CLASSES_ROOT\CLSID\{00024500-0000-0000-C000-000000000046}\LocalServer32
Default Value: C:\PROGRA~1\MICROS~1\Office\EXCEL.EXE /automation
When you have multiple versions of Office installed and you use Automation to one of the Office servers, the version that loads is governed by these settings in the registry. For the most part, the rule is that the last version that was installed is the version that loads with Automation; however, Word exhibits behavior that differs from the other Office applications. The different behaviors for each of the Office Automation servers are described in the following sections.
Access, Excel, and PowerPoint versions 97, 2000, 2002, and 2003
Access, Excel, and PowerPoint modify these registry keys during Office setup. When you automate one of these applications, the version that is loaded is the version that was last installed.
Word 97
Word 97 modifies these registry keys during Office setup. When you automate Word, if either Word 2000 or Word 2002 are installed, Word 97 loads only if it was the last version installed.
Word 2000, 2002, and 2003
Word 2000, 2002, and 2003 modify these registry keys during Office setup and each time Word starts. When you automate Word, the version that is loaded is the version that was last started by the user or the version that was last installed.
Additional Notes
A common perception for Office Automation when you have multiple versions of Office installed on a system is that you can dictate which version loads by using a specific version-dependent PROGID (for example, that "Excel.Application.9" loads Excel 2000, "Excel.Application.10" loads Excel 2002 and "Excel.Application.11" loads Office Excel 2003). However, this is not correct. Excel 2000, 2002, and 2003 share the same CLSID, so the version that loads with these PROGIDs depends solely on which version was last installed.
For testing purposes, developers can force a specific version of an Office application to register by using the /regserver switch on the command line. For example, to force an Excel version to register without running setup, you can use a command line that resembles the following:
"c:\program files\microsoft office\office\excel.exe" /regserverAlthough you can implement this switch for testing and development purposes, it is not recommended that you rely on this switch in production scenarios.
For additional information about running multiple Office versions, or side-by-side Office installations, click the following article number to view the article in the Microsoft Knowledge Base:
290576 (http://support.microsoft.com/kb/290576/)
OFFXP: Running Multiple Versions
of Microsoft Office
APPLIES TO
• | Microsoft Office Excel 2003 |
• | Microsoft Excel 2002 Standard Edition |
• | Microsoft Excel 2000 Standard Edition |
• | Microsoft Excel 97 Standard Edition |
• | Microsoft Office Access 2003 |
• | Microsoft Access 2002 Standard Edition |
• | Microsoft Access 2000 Standard Edition |
• | Microsoft Access 97 Standard Edition |
• | Microsoft Office 2000 Standard Edition |
• | Microsoft Office 97 Standard Edition |
• | Microsoft Office PowerPoint 2003 |
• | Microsoft PowerPoint 2002 Standard Edition |
• | Microsoft PowerPoint 2000 Standard Edition |
• | Microsoft PowerPoint 97 Standard Edition |
• | Microsoft Office Word 2003 |
• | Microsoft Word 2002 Standard Edition |
• | Microsoft Word 2000 Standard Edition |
• | Microsoft Word 97 Standard Edition |
• | Microsoft Visual Basic 6.0 Professional Edition |
• | Microsoft Visual C++ 6.0 Professional Edition |
• | Microsoft Office XP Professional Edition |
• | Microsoft Office XP Small Business Edition |
• | Microsoft Office XP Standard Edition |
• | Microsoft Office XP Standard Edition for Students and Teachers |
• | Microsoft Office XP Developer Edition |
• | Microsoft FrontPage 2002 Standard Edition |
• | Microsoft Outlook 2002 Standard Edition |
Keywords: | _ik11561 kbautomation kbgrpdso kbinfo kbpending kbvba kbvbp KB292491 |