본문 바로가기

프로그래밍 활용(TIP)

Microsoft VisualStudio .net 2003 검색 중 멈춤현상

업무상 예전 IDE인 Visual Studio .net 2003을 쓰게 되면서 'Find in Files'(파일에서 찾기, 단축키 : ctrl+shift+f)기능만 사용하면 다운되는 현상이 발생하여 매번 프로세스를 강제 종료시켜야 하는 불편함이 있었다.


검색해보니 IDE와 윈도우의 'Aero' 기능과의 충돌로 생기는 문제로 해결법이 자세히 나와있는 블로그가 있어 해당 내용 포스팅 한다.




출처 : http://m.blog.naver.com/devmachine/220074059623


Visual Studio .NET 2003 버전에서 Find in Files 먹통 현상 해결 방법

  

Visual Studio .NET 2003 버전이 출시된 지도 어언 10년이 지났지만 아직도 사용하시는 분들이 종종 계실겁니다. 저 역시 회사 프로젝트 중에 아직 Visual Studio .NET 2003 버전​을 사용하는 프로젝트가 있어서 쉽게 버리지 못하고 있는 실정이네요. 

 

그런데 Windows Vista 이상에 설치된 Visual Studio .NET 2003 버전에는 치명적인 문제가 한 가지 있습니다. 바로 Find in Files 기능을 실행하면 Visual Studio가 먹통이 되어서 강제 종료 후 재시작 시작해야 한다는 문제점이죠.

 

 

<그림: Find in Files 기능을 실행하여 먹통이 된 Visual Studio의 모습>

 

 

Find in Files 기능을 실행하였을 경우 먹통이 되는 이유는 Windows Vista 버전부터 추가된 Aero 테마와의 충돌 때문이라고 하는데, 다행히도 Windows Vista 버전과 Windows 7 버전에서는 Visual Studio .NET 2003 속성 창의 호환성 페이지에서 다음과 같이 '시각 테마 사용 안 함'에 체크하여 이 문제를 쉽게 해결할 수 있습니다.

 

 

<그림: Windows Vista 버전과 Windows 7 버전의 해결 방법>

 

 

하지만 불행히도 Windows 8 이상 버전부터는 호환성 탭에 '시각 테마 사용 안 함'을 체크하는 항목이 사라져 버렸습니다. 그래서 한동안은 포기하고 Find in Files 기능을 사용하지 않고 있었는데, 얼마전 저희 회사 팀장님이 저에게 방법을 찾았다는 희소식을 전해주셨네요.

 

 

Windows 8 이상 버전에서의 해결 방법

  

Windows 8 이상 버전에서는 시각 테마를 사용하지 않도록 하는 UI가 없으므로 다음과 같이 레지스트리 값을 변경하여 시각 테마 사용을 중지시켜야 합니다. 만약 실행되어있는 Visual Studio가 있다면 먼저 종료 하시고, HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers 경로에 다음과 같이 문자열 값을 추가합니다.




 

32bit Windows일 경우에는 이름을 C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE\devenv.exe 로​, 64bit Windows일 경우에는 이름을 C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\IDE\devenv.exe ​로 지정하시고 데이터에 DISABLETHEMES ​를 넣어주시면 됩니다(직접 입력하시기 귀찮으신 분들은 첨부한 reg 파일을 다운받아 실행하세요).

 

레지스트리 값을 추가하신 다음 Visual Studio .NET 2003을 실행하시면 Aero 테마를 사용하지 않기 때문에 안전하게 Find in Files 기능을 사용하실 수 있습니다. 그리고 이 방법은 Windows Vista 및 Windows 7 에서도 동일하게 적용할 수 있습니다.