Visual C++ team has discovered that after installing the current release of Internet Explorer (Internet Explorer 8), some VC++ wizards do not function correctly. The products affected are Visual Studio 2005 and Visual Studio 2008. Following are the affected wizards:
- Add Function
- Add Variable
- Smart Device – New Project Creation
- Smart Device – Add Class
Invoking any of the above wizards in VS2005 or VS2008 will pop up a script error if IE8 is installed on the machine. We have a workaround for those who have encountered this error.
Please follow the following steps:
- Open regedit (on a 64-bit OS, open the 32-bit regedit)
- Under “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones”, create a new key called 1000 (if it isn't already there)
- Under 1000, create a DWORD entry with:
o Name = 1207
o Type = REG_DWORD
o Data = 0x000000
For the workaround to work on VS2005 however, the VS2005 SP1 (and VS2005 SP1 Update for Windows Vista) has to be installed.
Following is a brief explanation of the problem and the workaround:
The VC++ Wizards Engine implements the IInternetSecurityManager interface. In this implementation it allows or disallows specific actions under certain policies that Internet Explorer queries it about. In IE8 a custom Security Manager now also gets queried about the URLACTION_ACTIVEX_OVERRIDE_REPURPOSEDETECTION policy which IE previously did not delegate to custom security managers when the engine wasn’t running in the iexplore.exe process. The IE engine then fails this action because we don’t have a policy entry for it in the custom zone for VC++ Wizards. We are still investigating whether this change in IE8 is by design and will possibly be addressing it by a fix in either the Wizard or IE components depending on the outcome.
The above workaround lets the policy 1207 (URLACTION_ACTIVEX_OVERRIDE_REPURPOSEDETECTION) to be allowed in zone 1000 (custom zone of VC++ Wizards engine). This allows the wizard code to work as intended.
We apologize for the inconvenience this issue may have caused you.
Visual C++ Team
The Internet Explorer team has released a security update to IE as mentioned in the IE blog:
This update also fixes the problem that caused some Visual Studio wizards to pop up a script error. After applying this update, the earlier workaround in the registry is no longer required, and the wizards should work fine.
Ja ich habe das Problem verstanden, aber am 30.4. hat dieser Workaround nicht funktioniert!
Ich habe soeben noch einmal den IE8 installiert und diesen RegKey gesetzt, jetzt funktioniert VS2008!
Wird wohl das typische Fehler-40-Problem gewesen sein ;-) Das wird auch mit Ausrufezeichen statt Punkten als Satzende nicht besser.
Just to add my voice, these dialogs need to be replaced. It makes no sense to use IE for this sort of functionality and in practice is slow and prone to breaking.
Replacing those dialogs should not take any longer than a week. I mean you are JUST changing the UI not the functionality.
If MS programmers take longer than that, may you should reduce the number of managers and meetings.
We don't want all those new features you maybe working on anyway if the essential tools FAIL.
We use VS6 because quite frankly anything afterwards just blew junks, at least for C++.
Work around not working.
OS: Windows XP SP3 32bit
VS: VS 2008 SP1 (9.0.30729.1SP)
Not working when add new member variables from dialog for VC++ MFC applications.
Would you mind opening a connect bug about this issue?
ANother Microsoft bungle! I can´t believe that the operational stability of Microsoft´s key and sole development platform is dependent on the web browser, and that changes to Explorer break Visual Studio! I also agree that the performance of these script driven dialogs is abismal, some 5000-times slower to execute that normal dialogs on my laptop! How can we trust in Microsoft when they make such bad choices!
- Windows XP SP3
- Microsoft Visual C++ 2008 (not SP1ed)
- IE 8 v8.0.6001.18702
the workaround fixed the issue. Thanks!
(BTW I agree with the above saying to return back to CDialog)
Let's be frank. The Microsoft IDE team does not care an ounce about C++ developers and wishes we'd all just go extinct already. The buggy museum pieces that pass off as resource editors today are another retardation since Visual C++ 6.0.
Two amazing things:
1. The solution fixed the problem.
2. The search engine found this page.
the workaround fixed the issue.
But i must reboot.
Thanks for the workaround. It fixed my problems with VS 2008 SP1 (on Win XP) (after restarting VS only ;) ).
Хотя эта статья адресована ИТ-администраторам, но и просто технически грамотные пользователи, возможно,
Deeply disappointing error. This is a shame in that this type of easy should have been caught by regression test that is supposed to run on a daily basis. VS team doesn't have a QA team or QA team's lack of understanding of the core technology?