2012-05-14 1 views
1

"표시"값을 읽으려고합니다 - 이전 시작 때문에 C# -App로 Windows7의 제어판에서 "모양 및 개인 설정" 앱이 값이 100 %로 설정되어 있는지 확인하고 그렇지 않은 경우 사용자에게 알려야합니다."모양 및 개인 설정"의 "표시"를 읽으십시오

여기에 컨트롤 패널이 무슨 뜻인지입니다 : http://maketecheasier.com/change-icon-size-and-display-settings-in-windows-7/2010/01/12

사전에 감사합니다!

내가 시도 :

+2

음을 , 96DPI = 100 %. –

답변

0

당신은 윈도우, 수평 방향으로 한, 수직 방향으로 하나에서 두 개의 "dpi의"설정 후. 대부분의 프로그램이 잘못 작성된하고, do not handle high-dpi display setting의 적절 :

float dpiX, dpiY; 
Graphics graphics = this.CreateGraphics(); 
dpiX = graphics.DpiX; 
dpiY = graphics.DpiY; 

: dpiXdpiY이 동일하게 나타날 것이라고는 매우 일반적이다. 이 때문에 Windows Vista를 시작으로 Microsoft는 이 아닌 특정 응용 프로그램에 특히이 high-dpi 디스플레이를 올바르게 지원한다고 선언합니다. 디스플레이가 여전히 (레거시 기본값) 96dpi로 설정되었다는 것을 응용 프로그램에 알립니다. 윈도우는 그것을 더 크게 만들하는 응용 프로그램의 크기를 조정하는 비디오 카드를 사용

당신은 응용 프로그램의 manifest에 항목 추가하여 높은 dpi의이 스케일링을 거부

enter image description here

:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <assemblyIdentity 
      version="1.0.0.0" 
      processorArchitecture="X86" 
      name="client" 
      type="win32" 
    /> 

    <description>My Super Cool Application</description> 

    <!-- We are high-dpi aware on Windows Vista --> 
    <asmv3:application xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"> 
     <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"> 
      <dpiAware>true</dpiAware> 
     </asmv3:windowsSettings> 
    </asmv3:application> 

    <!-- We were designed and tested on Windows 7 --> 
    <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> 
     <application> 
      <!--The ID below indicates application support for Windows Vista --> 
      <!--supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/ --> 
      <!--The ID below indicates application support for Windows 7 --> 
      <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/> 
     </application> 
    </compatibility> 

    <!-- Disable file and registry virtualization --> 
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> 
     <security> 
      <requestedPrivileges> 
       <requestedExecutionLevel level="asInvoker" uiAccess="false"/> 
      </requestedPrivileges> 
     </security> 
    </trustInfo> 

</assembly>