본문 바로가기

개발 관련

[팁] vs 2005, vs2008 로 IE8에서 디버깅문제 해결법

vs 2005, vs2008 로 IE8에서 디버깅문제 해결법 

IE8 설치하고 개발할때  브레이킹 포인트, 프로세스 디버깅 등 디버깅이 안돼요


아래와 같이 LCIE의 프로세스 추가 할당 기능을 비활성화해주면 된다고 하네요..


1) HKEY_LOCALMACHINE -> SOFTWARE -> Microsoft -> Internet Explorer -> Main
2) DWORD값을 TabProcGrowth 이름으로 해서 추가 (값 = 0)



위와같이 설정해놓으면 평소에 디버깅하는 방식대로 디버깅이 가능한데...


vs2008 은 지금 잘 안됩니다
Web Browser Debugger  방식이 디버깅이 추가 되어 있어 이것을
이용하면 된다고 하던데 이 방법도 아직 못찾았네요


windows 7에 IE8일경우 TabProcGrowth 의 REG_SZ값이 Medium으로 되어있음. 삭제후 위에 방법으로 추가하면 정상 디버깅 가능합니다.
 
이런 문제를 발생시킨 원인은 

LCIE (Loosely-Coupled Internet Explorer) 라는 IE8의 소프트웨어 구조 변경 때문이라는데요
그전에는 IE창 하나가 하나의 프로세스였는데
IE 8 이후부터는 탭, 팝업창 당 하나의 프로세스가 생성되어
디버거가 프로세스를 잘 찾지 못하는 것 같네요.
 

<참고>

1. http://www.hoons.kr/Board.aspx?Name=studya1&Mode=2&BoardIdx=22195&Key=&Value=

2. * IE 8 - TabProcGrowth 레지스트리 설정

   http://www.sysnet.pe.kr/Default.aspx?mode=2&sub=0&pageno=0&detail=1&wid=686

 


러나 

Windows 7 / Visual Studio 2008 / IE 8 의 환경인 제 컴퓨터에서 위 방법으로도 해결이 안되네요


구글링으로 아래와 같은 페이지를 찾았습니다.

아래 링크에 vs2008에 대한 위 문제에 대한 글이 있으며.. (리플들을 읽어 보셔야 합니다)

http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/f3fcb4fb-8a08-4fa0-8d58-9ed6f3eb1193


그 중 일부 발췌 하면...

Brad Sullivan

Update: 11/14/2008

 

A stand-alone patch is now available to fix this issue.  Please download this patch from the following location:

http://code.msdn.microsoft.com/KB957912/Release/ProjectReleases.aspx?ReleaseId=1796


If you have Visual Studio Standard Edition installed on a 64-bit operating system, you should install the 64-bit remote debugger before applying this patch.  This download can be found here:
http://www.microsoft.com/downloads/details.aspx?FamilyID=440ec902-3260-4cdc-b11a-6a9070a2aaab



위 방법으로 해결을 했습니다.
첫번째 링크를 따라가서 다운로드 받은 후에 실행 시키면 됩니다...
그런데 될때도 있고 안될때고 있고... 망할 ms

아직 이 문제로 고생하는 분들이 많은거 같은데.. 아직 확실한 해결책은 못찾았습니다.

...

최후의 방법...
Windows XP의 IE7 에서 디버깅을 하다.


<참고 >
1. http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/f3fcb4fb-8a08-4fa0-8d58-9ed6f3eb1193