Article ID: 940998 - Last Review: October 31, 2007 - Revision: 1.2 In Internet Explorer 7, you cannot use an application to programmatically enumerate Internet Explorer 7 instances in a desktop other than the default desktopImportant This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base: 322756
(http://support.microsoft.com/kb/322756/
)
How to back up and restore the registry in Windows On This PageSYMPTOMSConsider the following scenario:
Note This problem does not occur in Microsoft Internet Explorer 6. CAUSEThis issue occurs because of a change in behavior in Internet Explorer 7. In Internet Explorer 6, the ShellWindows object is associated with the following CLSID: {9BA05972-F6A8-11CF-A442-00A0C90A8F39} This object is a COM local server that exists for each desktop. When you use the CoCreate function to create a ShellWindows instance, the instance is bound to the server on the desktop where you create the instance. Therefore, the application can enumerate the Internet Explorer 6 windows in all desktops.In Internet Explorer 7, the HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\ subkey is added together with the RunAs registry entry. And the value of the RunAs registry entry is set to Interactive User. This change in behavior for Internet Explorer 7 causes the ShellWindows instance to be bound to the server on the default desktop even if you create the instance in other desktops. WORKAROUNDWarning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk. Workaround for Windows XP and for Windows Server 2003To work around this issue in Windows XP or in Windows Server 2003, follow these steps:
Workaround for Windows VistaTo work around this issue in Windows Vista, follow these steps:
STATUS This behavior is by design. MORE INFORMATIONA desktop is a securable object that has a logical display surface. A desktop may contain user interface items such as windows and menus. For more information, visit the following Microsoft Developer Network Web site: http://msdn2.microsoft.com/en-us/library/ms682573.aspx
(http://msdn2.microsoft.com/en-us/library/ms682573.aspx)
For more information about the AppID registry entry, visit the following Microsoft Developer Network Web site:http://msdn2.microsoft.com/en-us/library/ms682359.aspx
(http://msdn2.microsoft.com/en-us/library/ms682359.aspx)
| Article Translations
|
Back to the top
