高DPIで画面がボケボケ

へぇーと思って自作の Win32 や WindowsForms アプリで試してみたら、Windows 8 でも 125% までは XP形式?、それ以上はぼけぼけになった。ちょっとググってみると manifest で dpiaware が true に設定されているとボケないらしい。


MSDN を見ると↓これを manifest に入れれば良いらしい。

<?xml version="1.0" encoding="utf-8"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" >
  <asmv3:application>
    <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
      <dpiAware>true</dpiAware>
    </asmv3:windowsSettings>
  </asmv3:application>
</assembly>

150%に設定してサクラエディタを起動するとボケボケ。manifestを修正して起動しなおすと、パリっとシャープな画質に。.exe に manifest が埋め込まれている場合は、外部の .exe.manifest は読み込んでくれないみたいなので、リビルドするか ResourceHacker で修正しないといけないみたい。


Windows での高DPI環境がどんな感じかさわってみたいけど、富士通のあれは結構微妙な感じらしい。買わなくてよかったw