ClosedXML 是我用程式操作 Excel 時的奧林匹克指定程式庫(參考:令人驚豔的Excel程式庫 - ClosedXML),在 .xls 格式退休後,在 .NET 中要讀寫操作 Excel 檔案,非它莫屬,尤其結合 LINQ 用來更是得心應手。最近學到一點小眉角,筆記備忘。 假設我有個 Ex...

Coding4Fun 過程產生一個統計 FB 按讚數的小需求,手上有一份 URL 清單,我想統計各網頁臉書分享區塊的按讚數。(即下圖中的 239) 之前我用過一個笨方法,用 WebClient 抓該區塊的 IFrame 網址抓回 HTML 再從中解析,這回試試更有效率的正統做法。 Facebook...

發現前幾天提到的 ASP.NET Core with Vue 專案範本,因未納入官方支援的版本較舊停在 ASP.NET Core 2.0。 我的 Coding4Fun 專案用 2.0 跑其實也沒有什麼問題,但想想未來難免遇到需升級 .NET Core 版本場合,趁機累積點經驗也好。 ASP.NET ...

之前已介紹過在 Linux 執行 ASP.NET Core,並透過 Nginx 反向代理對外提供服務。(參考:ASP.NET Core + Nginx on CentOS 安裝筆記) 先前的做法都是透過 /etc/nginx/conf.d/xxx.conf 定義 server_name www.xx...

這兩年前端寫得少,Vue 筆記呈現「外出取柴」狀態轉眼也一年多。這段期間仍在留意 Vue.js 發展,專案上也用 Vue 取代 AngularJS 實作過幾個網頁的 MVVM,但嚴格來說沒什麼長進。 前幾週有網友問起老程式 - 中文編碼解析工具,讓我興起念頭,不如把它改成網頁版順便開源吧! 想當然爾...

如果你常看微軟新技術的範例程式碼,應不難發現 async 與 await 關鍵字已如野火燎原,無所不在。 對我這個 .NET 開發老骨頭來說,寫多執行緒、用 Task 處理非同步作業難不倒我,之前甚至也研究過 await Deadlock,但每回要用 async、await 卻有種說不上來的彆扭,琢...

岳父大人通知日光燈壞了,連忙切換成水電工模式,趕赴現場現場勘察。狀況為陽台天花板的四尺雙管日光燈壞了一枝,原因為燈管一端的固定燈腳脆化碎裂(如下圖),理論上可以只換燈腳就好,但該燈座用了幾十年,其他三個燈腳也老化可能得一併汰換,加上座身已多處鏽蝕,還是整個日光燈器換新比較省事。 為此做了功課,了解...

拜讀小鐵大分享兩篇精彩文章 - 對岸高手用駭客技巧狠狠教訓用裸照勒索女生的渣男及用網拍漏洞偷走手機的騙子的故事。觀犘學習(誤)之餘,忍不住想筆記一下手法,作為防範借鏡。 我人肉了一个用裸照威胁女孩的变态 故事是有個女孩在網路交友過程被某個渣男錄下裸照,並以此要脅見面,女生求助於作者。作者先用 QQ ...

金豬年新春開工,一早進辦公室,熱烈歡迎我的竟是枚茶包 - 伴我多年的 Acer P224W 螢幕慘遭年獸毒手,就這麼掛了... 電源開關持續閃爍橘燈,仔細觀察似乎伴隨背光反覆一閃即滅。 用電源燈閃爍爬文,可能故障點很多,電源板、AD板、燈管、面板... 但念在自己說什麼也修好過兩台螢幕,八年前第一次...

昨天的野外求生系列 - 無工具 WebApi 徒手測試一文得到不少迴響,我才知道被困在荒島上的工程師還蠻多的 XD,而其中一則讓我震驚的消息是 - 在一些更嚴格的資安規範之下,PowerShell 是被禁用的。 不過,做為一名身經百戰的老士官長,遇到再惡劣的狀況也要有對策,這點小挑戰嚇不倒我的~ 以...

基於資安考量,線上環境多半戒備森嚴,不允許隨意複製部署程式、安裝工具軟體需事先申請、開發人員無法親身操作,所有動作需委由 OP 執行。在這種困難險阻特多的環境查問題,像 Inline ASPX 這類偵錯技巧就顯得格外管用。 這篇談的也是類似情況,在不額外安裝或部署任何工具程式前題下,如何交由 OP ...

很久以前介紹過使用 OpenSSL 建立 CA 並簽發 SSL 憑證, 相較於自我簽署憑證,客戶端可安裝自訂 CA 憑證避免程式因不信任自製憑證無法連線。 但隨著時代演進,需求有點變化: HTTPS 已成資安基本要求,即使企業內部通訊也常被要求走 HTTPS,製作憑證的需求大增 2017 年 Ch...

開發測試網站時偶爾會遇到一人分飾多角的需求, 經典案例是待審表單或待辦工作介面,往往需要先用經辦身分處理完傳給主管,接著再切換成主管身分審核同一張表單。 十年前分享過 IE8: 用不同身份連上同一台 Web 的小技巧,恰巧最近有網友問起,索性整理一下這些年我陸續學習到的招式: 無痕模式、InPriv...

組件繫結重新導向是處理 .NET 組件版本衝突的捷徑, 將特定版號範圍重新導向統一版本,以化解部分程式要用 A.dll 1.1 版,某些要用 A.dll 1.2 的版本衝突。 版本衝突問題在實務上並不算罕見,過去的處理經驗還不少,一併整理在此提供參考: 組件繫結重新導向功能的實地觀察--以ODP....