2023-11-23 04:59 PM 1 2,943
依先前所學,System.Net.HttpClient 的 GetAsync()/PostAsync()/SendAsync() 等方法為 Thread-Safe,建議做法是只建立一份 HttpClient,以 static 方式共用。 今天踩到雷,以下為重現問題的程式範例。網頁使用 Windows...
2023-11-21 11:21 PM 3 2,290
前幾天說到 WebForm 版 js/css 自帶版本參數元件,讀者 yoyo 提了一好問題:HTTP 針對靜態檔已有 ETag、Last-Modified、If-Modified-Since、If-None-Match 等快取管理機制(延伸閱讀:IIS HTML 檔 Cache 行為觀察,何需自己...
2023-11-20 10:37 PM 8 3,631
.js/.css 換版後,想防止網頁讀取 Cache 強迫改用新版,最無敵的做法是在網址加個 ?v=XXX 參數,每次換版一併更新,URL 參數不同讓原 Cache 失效,即可確保萬無一失。 但手工維護 ?v=... 參數意味著每次換版必須叫出所有引用該 .js/.css 的網頁,一一修改 URL ...
2023-11-18 10:05 PM 0 4,961
Process Monitor 是調查刁鑽問題的神兵利器,透過觀察程式存取檔案、Registry 行為,往往能在案情膠著之際找出關鍵線索,在我的茶包射手生涯中立功無數,堪稱茶包一哥。 【延伸閱讀】 Process Monitor基本操作教學 Process Monitor 2.0 ProcMon五...
2023-11-18 05:11 PM 2 6,936
小閃光報案,家裡雷射印表機列印時紙上會出現固定規律的雜點,如下圖,每隔固定距離出現平行的兩個黑點: 我對雷射印表機的研究僅限於換碳粉匣跟處理卡紙,第一次遇到這種狀況還以為是核心組件出了問題,只能送修或買新機。 爬文後再長知識:入門等級印表機的感光鼓(或稱感光滾筒)跟碳粉匣都裝在那個可抽出的組件上,...
2023-11-16 11:26 PM 7 6,939
2023-11-17 程式更新:修正密碼英文未正確識別大小寫問題 Have I Been Pwned (HIBP) 是澳洲安全專家 Troy Hunt 在 2013 年建立的外洩密碼查詢平臺,連美國 FBI 跟英國 NCA (國家犯罪調查局)都會將蒐集到的外洩密碼貢獻給 HIBP 收藏 (參考:繼美...
2023-11-15 10:55 PM 0 8,986
前陣子參加一個 SHA1 暴力破解挑戰,寫了 .NET 程式用上 Parallel.ForEach 平行處理,幾經調校將嘗試次數推上每秒 300 萬次, 64 顆 CPU 齊上 85% 真是壯觀,是次有趣體驗: 這類大量破解運算用 CPU 跑吃力不討好。但決定入手迷你電腦當工作機的那一刻,便註定跟...
2023-11-14 11:34 PM 0 637
PowerShell 有個 -ErrorAction SilentlyContinue 參數可在出錯時隱藏錯誤訊息,並繼續執行命令。 今天發現,ErrorAction 參數不是對所有命令都有效,以下是個簡單測試,用 Get-LocalGroup 跟 Get-ADGroup 查詢本機及 AD 群組,故...
2023-11-12 08:41 PM 0 1,377
我寫了個 PowerShell 小工具,用 ConvertTo-SecureString/ConvertFrom-SecureString 加密保存資料,背後是靠 Windows DPAPI (Data Protection API) 運作,一套 Windows 內建,與使用者帳號與所在主機整合的加...
2023-11-10 10:37 PM 3 5,673
【前言】關於 SQL 執行計劃如何影響查詢效能議題很久之前研究過了(SQL筆記:Index Scan vs Index Seek、SQL筆記:Literal, Variable與Parameter),昨天研究 網站執行 Stored Procedure 爆慢,在 SSMS 秒回問題找到 SQL Se...
2023-11-09 11:59 PM 0 826
接獲報案,ASP.NET WebForm 站台更新 DLL 元件後出現安全錯誤,訊息如下: Security Exception Description: The application attempted to perform an operation not allowed by the se...
2023-11-08 11:53 PM 4 7,246
一個常見問題:SQL 上某個 Stored Procedure (以下簡稱 SP),從網站應用程式執行超慢,甚至等到逾時報錯;將同樣的 SP 及呼叫參數拿到 SSMS (SQL Server Management Studio) 執行卻瞬間完成;或是 SP 慢到無法忍受,將其中語法邏輯 Copy 出...
2023-11-05 05:45 PM 2 6,852
身為程序員,一直把「增進人類全體之生活」當成使命,沒能力為人類產生貢獻,能「增進家人之生活」也好。 長輩請了外籍看護,國語跟英文只到勉強溝通,最後 LINE 加翻譯軟體竟是目前效果最好的溝通方式。結果我做了件「用大砲打小鳥」的事 - 用 ASP.NET Core 寫 LINE Bot 接 ChatG...
2023-11-04 10:53 PM 2 1,542
最近有個小需求,想從 cmdkey /list 記憶密碼清單找出用某帳號登入的伺服器對象,例如想查出 jeffrey 被用來登入 TERMSRV/RemoteSvr、RemoteSvr(Domain)、TERMSRV/172.28.1.1。 上圖項目不多,直接用眼睛看即可。我的實際案例包含 git...
2023-10-29 09:33 PM 0 3,407
突發奇想閃過念頭,想把 PDF 投影片逐頁轉成圖檔,索性當成 .NET 練習題伸展暖身,說做就做。 .NET PDF 元件選擇不少,但好用的多是商用軟體,開源專案如 iTextSharp、QuestPDF 新版也改成商業授權,而轉存圖檔不同於編譯修改文件,訴求重點不同,順便趁機認識不同的程式庫。 這...
2023-10-29 10:42 AM 0 3,277
廚房的日光燈,四年前學到 T5 燈管比 T8 省電、壽命長後就由 T8 兩尺雙管換成 T5 四尺雙管,耗電雖由 40W (20Wx2) 上升到 56W (28Wx2) 增加 16 瓦,但理論亮度由 3200 流明(80lm/W x 40W)提高到 5768 (103lm/W x 56W),廚房從此大...