Quantcast
Channel: 黑暗執行緒
Browsing all 2480 articles
Browse latest View live

我不是機器人版 reCAPTCHA 筆記

10 年前舊版部落格 CAPTCHA 被攻破遭人狂塞垃圾留言,當時換成卡內基美濃太學發明,能有效阻擋機器人兼邀請人類參與古代書籍數位化的 reCAPTCHA,但第一代 reCAPTCHA 疑似被破解,後來才換成自己寫的陽春版加減計算 CAPTCHA。(防護力跟 reCAPTCHA 無法相提並論,但冷... Read More

View Article


【茶包射手日記】.NET Core on Linux 無法存取 Let's Encrypt 憑證網站

在 Linux (CentOS) 主機運作多時的 .NET Core 3.1 排程這幾個月失效,初步檢查是呼叫自訂 WebAPI 時出錯,錯誤訊息如下: Unhandled exception. System.Net.Http.HttpRequestException: The SSL connec... Read More

View Article


IE 都更筆記 - 汰換 showModalDialog()

這個系列是「將 IE-Only 網站翻修到 Chrome/Edge 相容」過程的瑣碎筆記,有參與古蹟維護的朋友請進。 今天說說網頁裡若出現只剩 IE 支援的 showModalDialog() 要怎麼修改?從 Chrome 43 跟 Firefox 56 之後,showModalDialog API... Read More

View Article

在 CentOS 安裝事務機驅動程式進行掃描

小閃光抱怨家裡的 Fuji Xerox M225dw 印表機雖有網路列印及掃描功能,但掃描得開電腦跑 Fuji Xerox 軟體,不能直接傳到手機或平板上,很不方便。 查了一下,Xerox 有個 Xerox Workplace App 但鎖定對象是辦公室用的多功能事務機,透過掃 QR Code 或 ... Read More

View Article

命令列工具的 stdout, stderr 輸出與 .NET 整合應用

昨天提到的 Linux 掃描工具 - scanimage,剛好有個經典輸出分流行為,scanimage 將圖檔傳到標準輸出(Standard Output),故可加上 > tab.tiff 轉存成檔案,加上 -v -p 參數,過程會顯示偵錯資訊及執行進度,則是顯示在主控端(Console): ... Read More

View Article


在 ASP.NET Core 用 Response.Body.FlushAsync 實現簡易即時進度回報

今年初分享過一個用 Response.Flush 在 ASP.NET MVC 實現即時進度回報的極簡風做法,但 ASP.NET Core 網站架構不同己無法適用。不管在什麼平台,極簡風永遠是我的最愛,所以,ASP.NET Core 版的簡易進度回報寫法來了! ASP.NET Core 移除了 Rep... Read More

View Article

.NET 6 圖形處理跨平台注意事項

.NET Core/.NET 6 號稱跨平台,但實際推進到 Linux,有些眉角遇上才會知道。 繼續嘗試在 CentOS 整合事務機掃描功能,掃描結果的圖檔格式是 TIFF,想寫段 C# 程式將它轉成 JPG,這用 Bitmap 來做是小事一椿。要在 .NET 6 使用 Bitmap,可安裝 Sys... Read More

View Article

【茶包射手日記】ASP.NET MVC 網站 Controller 網址傳回 HTTP 404

同事遇到的問題 - 某 ASP.NET MVC 專案使用預先編譯發行,檔案部署到 IIS,設好 Web Application,檢視 css、js、png 等靜態檔 OK,但 Home/Index 等 MVC 路徑全數失效,一律傳回 HTTP 404。 經對照調查,問題關鍵在部署時漏放 Preco... Read More

View Article


.NET 知識高裝檢 - .pdb 檔、編譯最佳化與偵錯

發現我對 PDB 檔的知識有點模糊過時,特舉辦知識高裝檢。 .pdb 檔的主要用途為何? PDB 提供編譯後程式與原始碼的對映資訊,是錯誤發生時 StackTrace 能指出所在程式位置的依據,另外在進行偵錯時,也需要靠 .pdb 的資訊才能做到檢視變數、設定中斷點、Line by Line 逐行... Read More

View Article


在 ASP.NET 用 Server-Sent Events 實現即時廣播

Server-Sent Events 算是蠻古老的技術,可實現伺服器端對瀏覽器的單向串流傳輸,目前除了 IE,所有瀏覽器都支援。 但提到網站串流傳輸,不是已經有 WebSocket、SignalR 了,Server-Sent Events 還有實用價值嗎?有! 如果是伺服器對瀏覽器的單向串流傳輸,S... Read More

View Article

更改檔案中文編碼導致 git diff 亂碼之完美解法

大家有遇到 git diff 比對文字檔,因中文編碼更改(例如 Big5 改 UTF-8)導致結果裡有一半中文變亂碼的情況嗎?我想到一個完美解法。(我自己覺得啦,不服來戰) git diff 遇到文字檔中文編碼不同的問題之前處理過(參考:Git 實戰技巧 - 使用 git diff 比對 UTF-1... Read More

View Article

Coding4Fun - 使用 C# 製作聲音檔,以摩斯電碼為例

很久沒有 Coding4Fun,想玩個有趣的題目 - 用 C# 無中生有產生聲音檔。 做了研究,.wav 檔用未壓縮的 byte[] 記錄聲音波形,只要依規範在檔案開頭填入聲道數、取樣頻率、解析度位元數... 等資訊,輕鬆就能在電腦上生出一段正弦波。(謎:要多無聊才會幹這種事?到底) 不過,大費周章... Read More

View Article

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 Article


dnSpy 實戰 - 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 Article

PowerShell 練習 - Windows 主機識別桌布產生器

最近在弄一個較複雜的測試環境,有多台主機扮演不同前中後台角色,且角色可能機動調整,使用遠端桌面登入操作時,除了由 IP 查 Email 更新通知,還希望有更直覺方便的識別方式。我想到一個簡單做法 - 做一張標示主機資訊的桌布,登入時馬上可看到提示。 真要做,其實用小晝家弄一下就好了,但我硬是把它當成... Read More

View Article

IIS 安裝 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 Article
Browsing all 2480 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>