CHOU

[VS2008] 인터넷 익스플로러8(IE8) 설치시 VS2008 실행 중 스크립트 오류 해결 본문

Tech/Technical Tips

[VS2008] 인터넷 익스플로러8(IE8) 설치시 VS2008 실행 중 스크립트 오류 해결

chobabo 2009. 5. 9. 09:48


 오랜만에 MFC 쓰다가 클래스 위저드 여는데.. 갑자기 뭔 스크립트 오류 같은게 떠서 무지무지 놀랐습니다^^. 처음에는 프로그램이 최근에 다른 프로그램을 많이 깔았는데 충돌나서 그런건가 해서 막 지우고 다시깔고 난리 법석을 떨었는데.. 안되서 약간은 자포자기하면서 인터넷 검색해 보니까.. 버그 더군요. 정말 아침부터 2시간 정도 아까운 시간만 날린거 같습니다. 우선 임시 방편으로 MSDN 에서 공개한 내용이 있는데 그걸 보고 따라하니까 되긴 되더라구요.

원문 주소
http://blogs.msdn.com/vcblog/archive/2009/03/28/some-vs2005-and-vs2008-wizards-pop-up-script-error.aspx


Some VS2005 and VS2008 Wizards Pop Up Script Error.


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.

 

Thank you

Visual C++ Team








 뭐 임시방편인거 같은데 계속 지켜봐야 할거 같긴 합니다. 이 동네는 워낙 인터넷 환경이 느리고 접속이 잘 안되서 문제가 발생하면 혼자 해결하려는 경향이 강한데.. 참 오늘 같은 문제는 난감한 일이였던 것 같습니다.

 최근에 많이 고민하는 문제이긴 한데.. 무조건 마이크로소프트 제품만 사용하려는 제 성향을 좀 바꾸어야 할것도 같다는 ㅋㅋㅋ.. 좀처럼 원인이 생겨도 디버그가 안되니까 무지 답답합니다^^.