昨日の記事の続きです。
毎日アウトプットするようにしないと絶対に続かない気がするので、文章にしています。
WinFormsで作成したUIの高dpi環境対応はできそうな感じです。
昨日画面がおかしくなったのは、マニフェストの設定が不十分だったようです。
壁紙設定の高dpi環境対応は、とりあえず試している環境では動くようになりました。
メインディスプレイが高dpi+サブディスプレイが96dpiという環境です。
サブディスプレイが高dpiだったり、スケーリング比率の違う高dpiディスプレイ同士だったり、ディスプレイ3枚以上だったりといった環境でどうなるかはまだ謎です。
仮想でもこのような環境を構築するのが難しそうなので、どうしようかなぁという感じです。
ちなみに、Windows 8以降であれば画面別に壁紙を設定できるようになっていますが、自作プログラムからでも画面別に壁紙を設定できるようです。(IDesktopWallpaper::SetWallpaper)
が、アプリ上で画面配置をプレビューするためだけに相変わらず面倒なことをしています…