Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

Visual Studio 실행 시 그래픽이 투명해진다거나, 깨진다면?

다음과 같은 글이 있군요. ^^

Visual Studio 2015를 실행하면 투명한 화면으로 표시됩니다.
; https://social.msdn.microsoft.com/Forums/ko-KR/afc7a6b3-f72f-49e8-9a1c-73bd05a16ea3/visual-studio-201547484-49892546655461647732-538044774954620?forum=vsko

("모든"이 아닌) 대개의 경우, 이런 유의 문제는 3D 가속과 관련해 그래픽 카드나 그에 대한 디바이스 드라이버, 또는 비주얼 스튜디오 자체의 버그로 인한 것일 수 있습니다. 따라서 이럴 때는 그냥 3D 가속 기능을 끄는 것이 좋습니다.

방법은 "Tools" / "Options" 메뉴를 실행하면 뜨는 다음과 같은 창에서,

vs_disable_hw_accel_1.png

보는 바와 같이 "Use hardware graphics acceleration if available" 옵션을 끄는 것입니다. 이후 다시 실행하면 창이 정상적으로 보이게 될 것입니다. (만약 여전히 문제가 지속된다면 3D 가속 기능과는 상관이 없는 것이므로 다른 원인을 찾아야 합니다.)




그런데, 만약 실행 시부터 UI가 깨져서 저 옵션을 설정할 수 있는 단계까지 갈 수 없다면 어떻게 해야 할까요? 이런 경우에는 조금 번거롭긴 하지만, 전역적으로 (모든 WPF 프로그램에 적용하는) 3D 가속 기능을 사용하지 못하도록 레지스트리 설정을 하면 됩니다.

경로: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics
이름: DisableHWAcceleration
타입: DWORD
값: 1

대개의 경우 저 값(DisableHWAcceleration)이 없을 것이므로 새로 생성해 1로 설정해 주면 됩니다. 이렇게 한 후 비주얼 스튜디오를 실행하면 정상적으로 UI가 보여야 합니다. (만약 여전히 보이지 않는다면 3D 가속 기능과는 상관이 없으므로 레지스트리 설정은 삭제하고 다른 원인을 찾아야 합니다.)

그렇게 해서 비주얼 스튜디오의 "Use hardware graphics acceleration if available" 옵션을 끈 후, 다시 레지스트리 키를 삭제해 주시면 됩니다.




참고로, 사용자가 설정한 "Tools" / "Options"의 값들은 다음의 경로에 있는 CurrentSettings.vssettings 파일에 저장됩니다.

%USERPROFILE%\Documents\Visual Studio 2017\Settings

재미있는 것은, "Tools" / "Options"에서 제공하는 Graphic 관련한 체크 박스가 3가지인데,

  1. Automatically adjust visual experience based on client performance
  2. Enable rich client visual experience
  3. Use hardware graphics acceleration if available

이 중에서, 1번과 2번에 대해서만 CurrentSettings.vssettings 파일에 다음과 같은 설정으로 보관이 되는 반면,

<PropertyValue name="AutoAdjustExperience">true</PropertyValue>
<PropertyValue name="RichClientExperienceOptions">65535</PropertyValue>

3번인 "Use hardware graphics acceleration if available" 설정에 대해서는 보관하고 있지 않습니다. 뭔가 별도 저장소가 있을 텐데... 찾을 수가 없군요. ^^; (혹시 아시는 분은 덧글 부탁드립니다.)




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 10/19/2018]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 61  62  63  64  65  66  67  68  [69]  70  71  72  73  74  75  ...
NoWriterDateCnt.TitleFile(s)
12242정성태6/23/202018466오류 유형: 623. AADSTS90072 - User account '...' from identity provider 'live.com' does not exist in tenant 'Microsoft Services'
12241정성태6/23/202021141.NET Framework: 914. C# - Task.Yield 사용법파일 다운로드1
12240정성태6/23/202022469오류 유형: 622. 소켓 바인딩 시 "System.Net.Sockets.SocketException: An attempt was made to access a socket in a way forbidden by its access permissions" 오류 발생
12239정성태6/21/202021498Linux: 30. (윈도우라면 DLL에 속하는) .so 파일이 텍스트로 구성된 사례 [1]
12238정성태6/21/202019438.NET Framework: 913. C# - SharpDX + DXGI를 이용한 윈도우 화면 캡처 라이브러리
12237정성태6/20/202019127.NET Framework: 912. 리눅스 환경의 .NET Core에서 "test".IndexOf("\0")가 0을 반환
12236정성태6/19/202019990오류 유형: 621. .NET Standard 대상으로 빌드 시 dynamic 예약어에서 컴파일 오류 - error CS0656: Missing compiler required member 'Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create'
12235정성태6/19/202018208오류 유형: 620. Windows 10 - Inaccessible boot device 블루 스크린
12234정성태6/19/202017739개발 환경 구성: 494. NuGet - nuspec의 패키지 스키마 버전(네임스페이스) 업데이트 방법
12233정성태6/19/202018909오류 유형: 619. SQL 서버 - The transaction log for database '...' is full due to 'LOG_BACKUP'. - 두 번째 이야기
12232정성태6/19/202017253오류 유형: 618. SharePoint - StoreBusyRetryLater 오류
12231정성태6/15/202020836.NET Framework: 911. Console/Service Application을 위한 SynchronizationContext - AsyncContext
12230정성태6/15/202019525오류 유형: 617. IMetaDataImport::GetMethodProps가 반환하는 IL 코드 주소(RVA) 문제
12229정성태6/13/202021618.NET Framework: 910. USB/IP PROJECT를 이용해 C#으로 USB Keyboard + Mouse 가상 장치 만들기 [1]
12228정성태6/12/202020211.NET Framework: 909. C# - Source Generator를 적용한 XmlCodeGenerator파일 다운로드1
12227정성태6/12/202024290오류 유형: 616. Visual Studio의 느린 업데이트 속도에 대한 원인 분석 [5]
12226정성태6/11/202022947개발 환경 구성: 493. OpenVPN의 네트워크 구성 [4]파일 다운로드1
12225정성태6/11/202020666개발 환경 구성: 492. 윈도우에 OpenVPN 설치 - 클라이언트 측 구성
12224정성태6/11/202029544개발 환경 구성: 491. 윈도우에 OpenVPN 설치 - 서버 측 구성 [1]
12223정성태6/9/202026024.NET Framework: 908. C# - Source Generator 소개 [10]파일 다운로드2
12222정성태6/3/202018544VS.NET IDE: 146. error information: "CryptQueryObject" (-2147024893/0x80070003)
12221정성태6/3/202018314Windows: 170. 비어 있지 않은 디렉터리로 symbolic link(junction) 연결하는 방법
12220정성태6/3/202022349.NET Framework: 907. C# DLL로부터 TLB 및 C/C++ 헤더 파일(TLH)을 생성하는 방법
12219정성태6/1/202020971.NET Framework: 906. C# - lock (this), lock (typeof(...))를 사용하면 안 되는 이유파일 다운로드1
12218정성태5/27/202019955.NET Framework: 905. C# - DirectX 게임 클라이언트 실행 중 키보드 입력을 감지하는 방법 [3]
12217정성태5/24/202018326오류 유형: 615. Transaction count after EXECUTE indicates a mismatching number of BEGIN and COMMIT statements. Previous count = 0, current count = 1.
... 61  62  63  64  65  66  67  68  [69]  70  71  72  73  74  75  ...