首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

Paint.NET 學習筆記(一):啟動流程與單一執行個體

     編輯:關於.NET

原始碼結構:核心專案 Data\Effects\Paintdotnet\PdnLib\SystemLayer,啟動專案 Paintdotnet,入口 Startup.cs。

Main 方法流程

  1. 建立 Startup 實例,呼叫 Start()。
  2. 註冊未捕獲例外處理:防止 .NET 預設對話框干擾使用者。
  3. DPI 感知設定:透過 SafeNativeMethods.SetProcessDPIAware (P/Invoke user32.dll) 解決高 DPI 模糊問題。
  4. StartPart2:無 /skipRepairAttempt 參數時執行。
    • 本地化:從 HKCU\Software\Paint.Net\LanguageName 讀取語言 (如 zh-CN),設定 Thread.CurrentThread.CurrentUICulture,後續 ResourceManager 自動載入對應資源。
    • 作業系統版本檢查:OS.CheckOSRequirement(),不符顯示錯誤並退出。
    • 升級參數處理:/updateOptions 顯示更新設定對話框。
    • 單一執行個體:SingleInstanceManager 檢查是否為首個執行個體;非首個則將命令列參數傳送給首個實例並退出。
    • 建立 MainForm:修正螢幕旋轉方向、視窗尺寸下限 (200px)、確保視窗在主螢幕可見區域。
    • 啟動主視窗:Application.Run(mainForm)。

啟動總結

  • 未捕獲例外處理
  • 啟動參數分派
  • 本地化資源載入
  • 主視窗幾何屬性校正
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved