C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■102705 / 10階層)  Windows Forms での Formのボーダー太さ
□投稿者/ Azulean (1291回)-(2023/12/12(Tue) 22:28:01)
2023/12/12(Tue) 22:39:12 編集(投稿者)

No102692 (魔界の仮面弁士 さん) に返信
> 手元の環境だと、ターゲットフレームワークとして
>  VS2022P… 2.0/3.0/3.5/4/4.5/4.5.1/4.5.2/4.6/4.6.1/4.6.2/4.7/4.7.1/4.7.2/4.8/4.8.1
(略)
> を選択できていますね。新旧バージョンが混在している環境だからかな…?
> ※Client Profile / .NET Comapact Framework / Unity などは省略

手元では検証できていませんが、Developer Pack 入れたらいいだけの話だったのかもしれません。
(プライベートでは MSDN を持っていないこともあって、環境をいろいろと触るのはサボっています…)

> そして .NET Framework 3.5 向けにコンパイルした EXE ファイルをバイナリエディタで開き、
> 00C8 のバイナリを 0xC4 → 0x06 に書き換えてみたところ、FixedSingle フォームが、4.8 相当に
>   Size={Width=816, Height=489}, ClientSize={Width=800, Height=450}
> に変化し、その逆に 4.5 版の 00C8 の位置を 0xC6 → 0x04 に書き換えると、3.5 相当の
>   Size={Width=806, Height=479}, ClientSize={Width=800, Height=450}
> になることを確認できました。

「0xC4 → 0x06」と「0xC6 → 0x04」の左側はなぜか C になっていますね。
些末ではありますが、気づいたので…。

No102702 (きゃむ さん) に返信
> MDI子フォームの場合ははっきりとボーターが表示され、その幅は .NET Framework 3.5 の場合
> 3pxくらい、.NET Framework 4.8 の場合で約7pxくらいです。

MDI 子フォーム自体はほぼ廃れましたからね。
昔々のボーダー描画のままとなっているので、今時のように「影」ではなく、はっきりとしたボーダーで描かれますね。

> PEヘッダーとかの話は若輩者の私には正直難しいですが、ようするにそもそもボーダーの太さが
> 変わったのはコンパイラ&Windowsの仕様変更によるものであり、どうしても対処しようなら
> 裏技的にPEヘッダーをいじれば可能ではあると。

csproj を直接編集して、SubsystemVersion を設定することはできるようです。(あまり使ったことはないです)
https://learn.microsoft.com/ja-jp/dotnet/csharp/language-reference/compiler-options/advanced#subsystemversion


旧バージョンのバイナリ向けの細枠モードはあくまで「互換性のために用意されている分岐」です。
古いやり方にすがり続けるのはリスクがある(将来廃止される恐れがある)ので、この機会に見直した方が良いとは思っています。
解決済み
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←Re[9]: Windows Forms での Formのボーダー太さ /きゃむ →Re[11]: Windows Forms での Formのボーダー太さ /Azulean
 
上記関連ツリー

Windows Forms での Formのボーダー太さ / きゃむ (23/12/11(Mon) 15:38) #102684
Re[1]: Windows Forms での Formのボーダー太さ / WebSurfer (23/12/11(Mon) 17:48) #102685
Re[1]: Windows Forms での Formのボーダー太さ / WebSurfer (23/12/11(Mon) 17:54) #102686
Re[1]: Windows Forms での Formのボーダー太さ / 魔界の仮面弁士 (23/12/11(Mon) 19:34) #102687
  └ Re[2]: Windows Forms での Formのボーダー太さ / Azulean (23/12/11(Mon) 20:24) #102688
    ├ Re[3]: Windows Forms での Formのボーダー太さ / 魔界の仮面弁士 (23/12/12(Tue) 10:00) #102692
    └ Re[3]: Windows Forms での Formのボーダー太さ / WebSurfer (23/12/12(Tue) 11:52) #102695
      └ Re[4]: Windows Forms での Formのボーダー太さ / 魔界の仮面弁士 (23/12/12(Tue) 11:58) #102696
        └ Re[5]: Windows Forms での Formのボーダー太さ / WebSurfer (23/12/12(Tue) 13:07) #102697
          ├ Re[6]: Windows Forms での Formのボーダー太さ / WebSurfer (23/12/12(Tue) 14:57) #102699
          └ Re[6]: Windows Forms での Formのボーダー太さ / 魔界の仮面弁士 (23/12/12(Tue) 14:36) #102698
            └ Re[7]: Windows Forms での Formのボーダー太さ / WebSurfer (23/12/12(Tue) 15:19) #102700
              └ Re[8]: Windows Forms での Formのボーダー太さ / 魔界の仮面弁士 (23/12/12(Tue) 16:10) #102701
                └ Re[9]: Windows Forms での Formのボーダー太さ / きゃむ (23/12/12(Tue) 17:28) #102702 解決済み
                  └ Windows Forms での Formのボーダー太さ / Azulean (23/12/12(Tue) 22:28) #102705 解決済み ←Now
                    └ Re[11]: Windows Forms での Formのボーダー太さ / Azulean (23/12/12(Tue) 22:36) #102706 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信