「Windows」標籤的文章
帶有「Windows」標籤的文章共 44 篇,依發布日期由新到舊排列。
-
如何理解 Windows 的工作階段隔離 ── Session 0・RDP・多使用者同時執行
整理 Windows 應用程式開發者容易混淆的「工作階段」概念。說明服務無法顯示 UI 的 Session 0 隔離原因、RDP 連線時工作階段的行為、具名物件的工作階段隔離,以及共用 PC・RDS 環境常見的設計失誤,從實務角度解說。
-
防止 Windows 應用程式重複啟動 ── 具名 Mutex 與重複執行時的視窗前置
整理業務用 Windows 應用程式的常見需求「不讓同一個應用程式啟動兩次」,如何用具名 Mutex 實作。涵蓋 Global\ 與 Local\ 命名空間差異在 RDP 環境中的陷阱、擁有執行緒限制與 AbandonedMutexException、考量 SetForegroundWindow 限制下的既有執行...
-
在 WinForms/WPF 應用程式中導入 Entra ID 驗證 ── MSAL.NET 與 WAM 代理的實務架構
從實務角度整理在 WinForms/WPF 桌面應用程式中導入 Entra ID(原 Azure AD)驗證的做法。內容涵蓋公用客戶端的概念、ROPC 廢除現況、應用程式註冊、MSAL.NET 的 AcquireTokenSilent 模式、WAM 代理、權杖快取持久化,以及導入判斷與維運上的陷阱。
-
業務應用程式的日期時間與時區 ── 從 DateTime 的陷阱到 UTC 儲存原則、測試設計
伺服器搬遷後時間整整差了 9 個小時、只有海外據點的日期會變成前一天──本文從 DateTime 的 Kind 與隱式轉換整理日期時間事故的根本原因。內容涵蓋與 DateTimeOffset 的取捨、UTC 儲存與 ISO 8601 原則、TimeZoneInfo 與夏令時間、和 SQL Server/SQLit...
-
Windows 桌面應用程式的 UI 自動測試 ── UI Automation 的原理與用 FlaUI 打造不易損壞的測試
本文從 Windows UI Automation 的原理(樹狀結構、AutomationId、控制項模式)整理 WinForms/WPF 應用程式的 UI 自動測試。內容涵蓋以 FlaUI 實作的最小範例、WinAppDriver 的現況、透過 AutomationId 設計與條件等待讓測試不易損壞的方法,以及...
-
WPF 高 DPI 對應──「不是應該對 DPI 很強嗎」卻仍模糊、暈邊的原因與對策
WPF 以 DIP(1/96 英吋)進行版面配置,一開始就是 System DPI Aware,但移到 DPI 不同的螢幕時整體會暈邊,點陣圖與細線也會模糊。本文從實務角度整理原因判斷、.NET Framework 4.6.2/.NET 上的 Per-Monitor DPI 對應宣告方式、UseLayoutRou...
-
WinForms 的高DPI支援 - 4K螢幕顯示模糊、版面跑掉的原因與實務對策
本文從 DPI 虛擬化與 DPI 感知模式(System Aware / Per-Monitor V2)的角度,整理 WinForms 應用程式在4K螢幕、150%縮放環境下顯示模糊、版面跑掉的原因,並說明 .NET 與 .NET Framework 各自的設定方式、AutoScaleMode 與設計工具的陷阱,...
-
Windows 的行程間通訊該怎麼選 ── 具名管道 / TCP / gRPC / 共享記憶體 / COM 判斷表
整理 Windows 應用程式之間該如何選擇溝通方式。以判斷表整理具名管道、本機 TCP、gRPC、共享記憶體、檔案協作、COM 各自的強項與陷阱,並從實務角度說明 UI+服務分離・32bit/64bit 橋接・權限邊界等典型架構,以及具名管道的實作範例。
-
在 C# 中將 SQLite 用於業務應用程式 ── WAL 模式・排他控制・損毀對策・與 EF Core 的取捨
整理用 Microsoft.Data.Sqlite 把 SQLite 整合進業務用 Windows 應用程式的實務知識:連線字串與連線池、WAL 模式的原理、SQLITE_BUSY 與寫入路徑單一化、用交易加速、型別對應的陷阱、用 VACUUM INTO 備份,一直到該在什麼場合使用 EF Core。
-
Windows 服務的建立與維運 ── 從工作排程器的取捨到 BackgroundService 服務化
常駐處理該做成 Windows 服務,還是工作排程器就足夠?本文整理判斷表,以及用 .NET Worker Service(UseWindowsService)建立服務的方法、執行帳戶、復原選項、事件記錄、安全停止處理,從實務角度梳理上線維運所需的設計。
-
IE 模式之後改用 WebView2 就好嗎 ── ActiveX 無法運作的限制與現實的遷移設計
本文從內部系統的角度,整理 WebView2 的基本結構、Evergreen 與 Fixed Version 兩種配布策略、使用者資料資料夾的陷阱、原生與 Web 的連結方式,並在「ActiveX 無法運作」這一限制的前提下,梳理出脫離 IE 模式依賴系統的現實遷移順序。
-
Windows應用程式資料儲存位置怎麼選 ── SQLite / JSON / 登錄檔 / Access 判斷表
Windows桌面應用程式的資料該存在哪裡、用什麼格式儲存?本文整理AppData/ProgramData的使用區分,以及SQLite、JSON檔案、登錄檔、Access(.accdb)各自的優勢與陷阱,並附判斷表,從實務角度說明防止資料損毀與位元數問題等注意事項。
-
工作排程器的工作不執行、以 0x1 結束 ── 原因排查與安全的維運設計
本文整理 Windows 工作排程器的執行帳戶與登入類型、「不論使用者是否登入均執行」的含義、以 0x1 結束的典型原因、啟用歷程記錄、防止多重啟動、PowerShell 腳本的正確呼叫方式,直到把定期執行真正落實到維運上的設計方針。
-
Windows 的 MFC 是什麼──維護既有資產的基礎知識
整理 Microsoft Foundation Classes(MFC)的概觀、與 Win32 的關係、應用程式結構、訊息映射、Document/View、DDX/DDV,以及維護時的注意事項。
-
廢棄 Windows PC 前該做的事 ── 資料清除、帳戶解除、備份的實務檢查清單
本文整理在廢棄、轉讓、出售、歸還租賃的 Windows PC 之前該做的事,涵蓋備份、資料清除、BitLocker、Microsoft 帳戶、OneDrive、公司帳戶、開發者 PC 特有的機密資訊,以及廢棄記錄留存等觀點。
-
委外・委託開發 Windows 應用程式前該整理的事項
在委外・委託開發 Windows 應用程式之前,整理既有軟體改版、設備整合、COM/ActiveX、發布與更新、維護等應留意的重點。
-
正確處理 Windows 偽裝權杖 - 執行緒層級的權限借用與安全還原方式
本文整理 Windows 偽裝權杖的實務安全處理方式,涵蓋存取權杖、主要權杖、執行緒權杖、偽裝層級、RevertToSelf,以及 .NET 的 WindowsIdentity.RunImpersonated。
-
在 C#(CSharp)中執行 PowerShell 並以物件形式接收結果
本文從實務角度整理如何從 C# 啟動 PowerShell,並以 PSObject 而非字串來接收結果,涵蓋 PowerShell SDK、AddCommand、AddParameter、BaseObject、Properties 到錯誤處理。
-
用 Pester 整備 PowerShell 測試 ── 讓維運腳本不易損壞的實務做法
本文整理用 Pester v5 測試 PowerShell 腳本的實務步驟,涵蓋日期處理、檔案操作、刪除處理、Mock,一路到 CI 執行,協助安全地建立測試基礎。
-
Windows為何演變成現在的樣子:從開發者角度看歷代Windows的演進
本文從相容性、穩定性、權限管理、驅動程式、Win32、.NET、資安等Windows應用程式開發者的角度,整理Windows 95到Windows 11的變化,而不是單純以外觀年表的方式呈現。
-
Windows應用程式開發者的CPU設定入門:優先順序・親和性・P核心/E核心
本文為Windows應用程式開發者整理CPU優先順序、親和性、P核心/E核心、省電設定、EcoQoS/Efficiency Mode之間的關係,以及衡量效能、回應性與發熱的思考方式。
-
開發者的奇愛,或者我如何學會停止憂慮並愛上Windows
Windows很麻煩。但這種麻煩,正是因為它是一個長年背負著現實業務的作業系統才會有的麻煩。
-
PowerShell 實用指令集錦 ── 累積日常工作常用的小工具
本文整理 PowerShell 日常工作中常用的實用指令,說明 Measure-Object、Group-Object、Select-String、Compare-Object、Tee-Object、Start-Transcript 等指令的使用場景與時機。
-
PowerShell 腳本應用 ── 安全地自動化日誌調查、封存與報表化
本文整理用 PowerShell 腳本安全地推進日誌調查、CSV 報表、舊日誌封存、留存紀錄,一直到工作排程器定期執行的實務步驟。
-
PowerShell 指令基礎 ── 該先學會的操作與安全使用方式
為了讓 PowerShell 初學者在實務上不會迷路,本文整理了如何尋找 Cmdlet、管線、檔案操作、CSV 處理、執行原則,以及避免事故的確認步驟。
-
Windows 為什麼會出現「Windows 已保護您的電腦」
從程式碼簽章、EV/OV 憑證、Azure Artifact Signing、MSIX、Microsoft Store、ClickOnce、內部發佈到 App Control,以實務角度整理 Windows 應用程式發佈時出現 SmartScreen 警告的原因。
-
擺脫 IE 模式依賴系統的實務指南
本文從網站清單集中管理、中立網站、WebView2 封裝、階段式重構、VDI 隔離到治理設計,整理出一套讓依賴 Microsoft Edge IE 模式的內部 Web 系統能安全延命、並逐步脫離依賴的實務步驟,內容細緻到讀者可以直接動手執行。
-
Office 2024/Microsoft 365 中 ActiveX 無法運作的原因與檢查步驟
說明在 Office 2024/Microsoft 365 中 ActiveX 無法運作時,依序排查預設停用、32bit/64bit、COM 註冊、相依 DLL、IE 模式、Click-to-Run 記錄的順序。
-
為 VBScript 停用做準備:VBA・企業內部工具盤點指南
本文整理 VBScript 分階段停用前,VBA、Excel 巨集與企業內部工具的資產盤點、靜態偵測、執行紀錄蒐集、替代技術選型、測試與分階段導入的做法。
-
GCPW 是什麼 - 用 Google 驗證處理 Windows 登入的方法
整理 Google Credential Provider for Windows(GCPW)的運作原理、與 Windows device management 併用、既有設定檔、首次登入、離線、兩步驟驗證,以及導入時的注意事項。
-
整理 Windows 的字元編碼與換行符 - Shift_JIS / UTF-8 / UTF-16、亂碼、CRLF / LF,為何混亂
本文整理 Windows 上字元編碼與換行符容易混亂的核心:bytes、UTF-8 與 CP932、UTF-16LE、BOM、CRLF 與 LF 是不同軸的概念,亂碼源於以錯誤前提 decode,且誤儲存後無法還原。讀完即可在規格中寫出明確的 encoding 與換行約定,降低事故。
-
ClickOnce 是什麼 - 以實務視角整理機制、更新、適合場面・不適合場面
本文以實務視角整理 ClickOnce 是什麼,從 manifest、快取、更新、簽章的構造,到適合公司內部 .NET 桌面業務應用程式的案件與不適合 machine-wide 或 service、driver 等深度 OS 整合的案件,幫助讀者判斷是否採用並掌握 deploymentProvider 與簽章運營要點。
-
用 Windows 沙箱加速 Windows 應用程式開發的驗證 - 以實務向整理管理員權限問題、乾淨環境、權限不足・資源不足的重現
整理在 Windows 應用程式開發中如何運用 Windows Sandbox 加速驗證的實務做法。透過按情境分檔的 .wsb、唯讀輸入與專用 Outbox 寫入分離、在容器內另建標準使用者重現權限不足、以及降低記憶體和關閉 vGPU 製造資源不足偏向,把每次的乾淨環境準備變成可重複的步驟。
-
Windows 的 DLL 名稱解析機制 - 以實務角度整理搜尋順序、Known DLLs、API set、SxS
從實務角度整理 Windows 的 DLL 名稱解析,說明 loader 在掃描檔案系統前會先處理 DLL redirection、API set、SxS、Known DLLs,並用 SetDefaultDllDirectories 與 LoadLibraryEx 旗標縮小搜尋範圍以避開 hijacking 風險。
-
Windows 什麼時候需要系統管理員權限 - UAC、保護區、設計上的分辨方式
從邊界與儲存位置的角度,整理 Windows 何時真正需要系統管理員權限:UAC、保護區、HKLM、服務、驅動、防火牆。同時說明 per-user 與 per-machine 的差異,以及把管理員處理切成獨立 EXE、服務或工作的設計取捨,幫讀者判斷該不該提權。
-
釐清 Windows 的文字編碼 - 亂碼為什麼會發生,尤其是與 Linux 搭配時什麼地方會偏掉
本文從「亂碼為什麼會發生」的角度,重新整理 Windows 在 CP932、UTF-8、UTF-16、BOM、console code page 與 PowerShell 版本之間的編碼前提差異,並聚焦與 Linux 搭配時最常翻車的場景。透過 4 個調查問題與運維 checklist,幫你把文字編碼當成 I/O...
-
外部設備狀態檢查與顯示的最佳實務 - 別只用『連線中』就交差的設計
整理外部設備整合應用的狀態檢查與顯示要點。把存在、連線、回應性、功能備妥、資料新鮮度、組態一致與監控健全性拆成多軸管理,搭配啟動列舉、event 與 poll 並用、附 timestamp 的顯示、分級告警與 backoff 重連,避免「連線中」掩蓋實際狀況,讓 operator 能判斷此刻安全可做的動作。
-
Windows 應用安全處理子行程的 checklist - Job Object、結束傳播、標準輸入輸出、watchdog 的最佳實務
在 Windows 應用上安全處理子行程,關鍵不在挑啟動 API,而是設計行程樹的擁有者與結束流程。本文整理 Job Object 的 KILL_ON_JOB_CLOSE、GUI 與 console 的 graceful shutdown、stdio 平行抽乾與 EOF、watchdog 配置與 restart ...
-
Windows 應用發布方式怎麼選 - MSI / MSIX / ClickOnce / xcopy / 自訂 updater 的判斷表
整理 Windows 應用程式的發布方式,把 MSI、MSIX、ClickOnce、xcopy 與自訂 updater 各自的適用情境攤開比較。重點不是哪一種 installer 比較新,而是與 OS 的耦合深度與更新責任由誰扛兩條軸線;讀完能依 per-user/per-machine、服務或驅動有無、更新頻率...
-
在 Windows 環境下減少 Codex 亂碼事故的最佳實務 - 先把『指示方式』釘住,再談環境整備
本文整理在 Windows 上讓 Codex 安全處理日文檔案的指示原則:讀檔前先確認 encoding 與 BOM,疑似亂碼禁止臆測儲存,既有檔案維持原狀,僅新建採 UTF-8,並在寫入後重新讀取代表性日文行驗證,把規則沉澱進 AGENTS.md 以減少事故。
-
Windows 使用者設定檔入門 - AppData 與 NTUSER.DAT
整理 Windows 使用者設定檔的基本概念、AppData 的區分使用、本機/漫遊/Mandatory/Temporary、Folder Redirection、FSLogix,以及設定檔損壞時的排查方式。
-
把 Windows 的「處理器排程」改成「背景服務」會發生什麼 - 整理 quantum、優先權提升、P-Core/E-Core
整理把 Windows 的「處理器排程」切到「背景服務」時,到底改變的是哪一層;從 quantum、前景偏好、優先權提升,一路接到 Windows 11 hybrid CPU 上 QoS 與 P-Core/E-Core 的選擇,並區分什麼情況真的有效、什麼情況其實是 DPC、驅動、EcoQoS 等別的問題。
-
在 Windows 上如何比較不同版本程式的執行速度 - 從電源模式等環境的對齊到可到的極限
本文整理在 Windows 上比較不同版本程式速度時,如何把 power mode、power plan、熱、背景雜訊與快取狀態這些雜訊削到最低,並依 wall-clock、CPU time、cycle 三種指標把差異拆開讀,必要時再用 ETW / WPR 挖出真正的理由,協助你寫出有重現性、能被別人覆驗的 be...
-
Windows 中 NIC 詳細設定一次整理 - Jumbo Packet、RSS、LSO、RSC、Flow Control、EEE、Wake on LAN 到底要怎麼設
本文以實務角度逐項拆解 Windows NIC 進階設定,從 Speed & Duplex、Jumbo Packet 到 RSS、RSC、LSO、Interrupt Moderation、Flow Control、EEE 與 Wake on LAN,說明每項調整在吞吐量、延遲、CPU 與省電之間的取捨,並提供症狀...