起こったこと
発端
わたしはいまだに仕事の一部でVisual Studio 2010の環境でMFCアプリケーションの(保守ではなく)開発をしています
※2010続行は客先要望です
メンバが増えたので新たなPCに開発環境を準備することになりました
ただ、Visual Studio 2010はライセンスの関係でそのPCで使用できず、Visual Studio 2017で開発環境を作成することに…
実行
無事環境をととのえ、Visual Studio 2017でビルドができるようになりました
さっそくビルドしたアプリケーションを実行したところ、なんと、レイアウトが崩れている!!!
よくある話でしょと思ったが…
自分の環境でもあったのですが、Windows10に移行した際にレイアウトが崩れたりしたので
その時はDPIの設定などで解決したのですが、何をしてもうまくいかない…!!!
当然、Visual Studio 2010環境下でビルドしたアプリケーションをPCに持ってきて起動するとレイアウト崩れは起きない
…なぜ?
解決方法
レイアウト崩れがどこで起きているのか、よく見るとヘッダ部分の文字の位置やサイズが微妙にずれている
こんな感じの崩れはIEのバージョン違いであったなーと思い、
ためしに、 [アプリケーション右クリック] > [プロパティ] > [互換モード] > [互換モードでこのプログラムを実行する] > [Windows Vista(Service Pack 1)]
を選択してみると、レイアウト崩れが解決できた
恐らくはService Pack 1で開発されているからこれで解決するのでしょう(ちゃんと調べてない)
これから
全体の開発環境が更新される時には、実装やビルドの設定などを見直さなければなりませんが、
現状1人の環境でのみ起こる事象であるので、ソリューションなどの設定は極力変えたくありません
目先の解決方法としてはこれでよいかと思います
そもそもでいえば未だに2010環境で開発しているのがどうかしてる気がしますし、
一般的には2010 ⇒ 2017以降にすっ飛ばして移行することもないでしょうから
この記事はあくまで備忘録としてインターネット上に浮かべておきます