Coding4Fun - ASP.NET Core 整合事務機掃描功能
前情提要:前陣子,小閃光抱怨家裡的 Fuji Xerox M225dw 印表機的掃描功能只能用電腦操作,沒法由手機掃描直接下載圖檔。我心生一計,家裡的迷你家用伺服器平日閒閒沒事,都快變成冗員,何不寫個 ASP.NET Core 網站放在上面跑。研究了一下,還真找到在 CentOS 安裝事務機驅動程式... Read More
View Article使用 dotnet 命令列工具發行 .NET 6 專案
.NET 5 時介紹過用 Visual Studio 發行 .NET 5 專案,.NET 6 這篇改整理 .NET CLI (dotnet 命令列工具) 發行技巧。 主要參考來源為微軟文件 - .NET application publishing overview dotnet publish 產... Read More
View Article【茶包射手日記】重複使用 WebClient 時注意 Headers 可能變動
今天踩到一個坑,發現 WebClient 有個我沒注意過的行為。 試著用 WebClient 呼叫 SharePoint 的 REST API,怎麼試都不成功。因為是第一次寫,優先想到的是我漏了某個必要參數或忽略關鍵步驟,而用錯誤訊息爬文,查到的案例幾乎都是未設定 Content-Type 所致,而... Read More
View ArticlednSpy 實戰 - WebClient Header 改變之謎徹底解密
昨天分享重複使用 WebClient 時 Headers 會變動的踩雷經驗,陸續有讀者提問,歸納疑惑點不外乎「在哪些情況下哪些 Header 會改變?」,解答就藏在 .NET 的原始碼裡,如果你能找對位置的話。 要得到真相得追進 .NET Framework 或 .NET 6 原始碼,微軟有提供 .... Read More
View Article小技巧 - System.Text.Json 不轉強型別讀取 JSON
從 .NET Core 3.0 開始,System.Text.Json 逐步取代 Newtonsoft Json.NET 成為 .NET 處理 JSON 的官方解決方案。在寫 .NET 6 專案時,我也開始嘗試不引用 Json.NET,改以內建 System.Text.Json.JsonSerial... Read More
View Article【答客問】無原始碼修改 .dll/.exe Embedded Resource
讀者骨董修復菜鳥問了一個有趣問題 - ASP.NET 網站的 .js 以內嵌資源(Embedded Resource)方式存在 .dll 裡,若沒有原始碼或無法重新編譯專案,要如何修改? 我猜想世界或許有某個軟體工具可優雅地完成這項工作,但 .NET 有 ildasm.exe 及 ilasm.exe... Read More
View ArticlePowerShell 練習 - Windows 主機識別桌布產生器
最近在弄一個較複雜的測試環境,有多台主機扮演不同前中後台角色,且角色可能機動調整,使用遠端桌面登入操作時,除了由 IP 查 Email 更新通知,還希望有更直覺方便的識別方式。我想到一個簡單做法 - 做一張標示主機資訊的桌布,登入時馬上可看到提示。 真要做,其實用小晝家弄一下就好了,但我硬是把它當成... Read More
View ArticleIIS 安裝 ASP.NET 3.5 時發生 0x800f0954 / 0x8024402c 錯誤
今天說一個在企業內部或網路管制環境安裝 IIS 可能會遇到的問題 - Windows 10 / Windows Server 2016 之後的版本,常因設定了 Windows Update Server 或不能上機造成 IIS 無法安裝 ASP.NET 3.5 模組,用 GUI 或PowerShel... Read More
View ArticleASP.NET 實戰手札:重啟網站才能解決的 TypeInitializationException 錯誤
這是開發 ASP.NET 網站可能遇到的問題:當類別的靜態建構式、靜態欄位初始化出錯,將導致 TypeInitializationException 「'XXXX' 的類型初始設定式發生例外狀況。 The type initializer for 'XXXX' threw an exception.... Read More
View Article2021 台北馬拉松 - 重生
新冠疫情打亂我這些年追求一月一馬的慣例,賽事紛紛延期或取消,更慘的是警戒期間慢跑得戴口罩,跑不到十公里口罩被汗浸濕,活像被濕毛巾蓋臉刑求,再多跑十分鐘,我八成連提款卡密碼都會供出來。即時勉強維持每個月一百公里以上的月跑量,但品質慘不忍睹,連六分半、七分速都出現了,過去可以連兩天跑 SUB2 的中年人... Read More
View ArticleESP32 多核多工執行應用實例 - 定頻取樣
ESP 開發板目前有 ESP8266 與 ESP32 兩個世代,新一代的 ESP32 標榜雙核心、CPU 頻率翻倍、SRAM、Flash、GPIO/I2C/SPI/UART 都加倍,還內建藍牙、觸控電容、溫度感測器、霍爾(磁力)感測器,規格上完全輾壓 ESP8266。但 ESP8266 也是有個強大... Read More
View Article為可攜版 Notepad++ 設定右鍵開啟選單 - 使用 PowerShell
許多軟體都有提供可攜版本(Portable Version),標榜不需安裝(免管理者權限),下載解壓縮在目錄便可執行,刪除即可移除,不會在系統路徑殘留程式庫、設定檔、Registry 登錄... 等。像是 7-Zip、Notepad++ 除了標準安裝程式,還會提供可攜版: 以 Notepad++ ... Read More
View Article以管理者權限啟動 Windows 批次檔或命令列程式
我的電腦有個第三方常駐程式存在 Bug,Windows 睡眠喚醒後偶爾會失常,常駐程式沒提供關閉選單,只能用工作管理員砍掉再重啟。大家都知道我很受不了重複滑滑鼠敲鍵盤,每次遇到都千方百計想把它自動化。於是我寫了一個只有兩行的小批次檔 (.bat) 放在桌面,取代「開工作管理員選程式、按 DEL 或用... Read More
View Article離線安裝 VSCode 與 Extension .vsix 批次下載
愈來愈多軟體採用隨選下載安裝,安裝程式只包含主程式,其他需要的模組、套件會等用到時再從 Internet 下載自動安裝,如此使用者不需要下載好幾 GB 的安裝程式,裡面包含一堆這輩子都不會用到內容,用多少下載多少,能節省可觀的頻寬與時間,說來聰明又環保。 VSCode 也依循這樣的設定哲學,剛安裝好... Read More
View Article精簡版直流電源光控開關
大家還記得我的定時炸彈造型電子鐘嗎?為延長電池續航力,我陸續加了光敏電阻改成浴室開燈才顯示、也試過擴充成三顆 18650 電池,第三版則啟用 EPS 晶片特有的 DeepSleep 功能在關燈期間休眠,每隔五秒喚醒偵測燈光決定啟動或繼續休眠,但效果仍不夠理想,主要原因是休眠期間 5V、3.3V PI... Read More
View Article使用 .NET 6 開發 Windows Service
.NET Framework 時代寫 Windows Service 的標準做法是用 Visaul Studio 新增 Installer、再用 InstallUtil.exe 安裝。(參考:Windows Service 新增 Installer 功能並自動開啟防火牆設定 by 保哥) 而 .NE... Read More
View Article【茶包射手日記】SETX 設定 PATH 環境變數地雷
要在 Windows PATH 環境變數增加程式路徑,不想滑滑鼠,打算用下指令搞定,爬文查到 SETX PATH "%PATH%;C:\Tools\some-tool\bin" 的精簡寫法,大喜! 不料卻踩到地雷。 由於不想動用管理者權限,打算設在使用者 PATH 環境變數就好,... Read More
View Article用 Markdown 寫技術文件 - 編輯工具與平台選擇
我在三年前改用 Markdown 寫部落格,著眼點在省去改樣式、設連結、調位置... 等無謂的排版工夫,全力專注在文字內容上(謎:那錯字還那麼多是為什麼?),額外收獲是學會寫 Markdown 的技能。Markdown 無疑是當今技術寫作的主流格式,如 Github、Stackoverflow 都以... Read More
View ArticleMarkdown 技術文件寫作 - 處理圖檔
先說一下,這系列文章將聚焦於用 VSCode 搭配 Hugo 以 Markdown 格式撰寫 KB、操作手冊、系統文件... 等技術文件,性質與用法會與部落格文章有點差距,例如:較少用到最新文章、草稿狀態、發佈時間排序、分類/標籤... 等功能,如果你的目的是用 Hugo 寫部落格,可以參考 20... Read More
View Article充滿驚喜的電子琴喇叭維修
我修完東西會想 PO 文,原因有兩種:一種是故障狀況經典,想分享給喜歡動手解決問題的同學們參考;另外一種則是因為維修過程曲折,歷經艱辛修好的一刻感動滿到流出來,非得寫篇文章在下面接著。但這回兩者都不是,故障原因明顯,而維修過程勢如破竹,順利到像是有人做球給你殺或不小心開了外掛,爽快到讓人想記上一筆,... Read More
View Article