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

Image may be NSFW.
Clik here to view.

Coding4Fun–自動產生副檔名轉 ContentType 對照表

昨天的文章提到 .NET 4.5 內建 MimeMapping.GetMimeMapping(),可省去自己用 switch … case 逐一列舉副檔名對應ContentType 的工夫。不過,這項福利僅限於 .NET 4.5+,如果程式使用的是 .NET 3.5 或 .NET 4.0,只能乖乖自己處理。理論上,新開發的程式用 .NET 4.5.2+ 名正言順(參考:  蛤,微軟停止.NET...

View Article


Image may be NSFW.
Clik here to view.

CODE-使用 Stack + yield 取代遞迴

分享最近學到的遞迴邏輯的替代寫法。舉個實例比較容易說明,假設公司組織樹狀結構以部門資料物件形式呈現:publicclass Dept {publicstring Name;public List<Dept> Children = new List<Dept>(); }組織架構範例如下:{"Name": "總經理","Children": [ {"Name":...

View Article


Image may be NSFW.
Clik here to view.

【茶包射手日記】Windows 10 每天十點多固定醒來

家裡 Windows 10 的使用率不高,平時長期處於睡眠狀態,但偶爾會發現無故醒來,我知道有部分 Windows 排程具有喚醒電腦能力,正常情況醒來做完事閒置一陣子會再回去睡覺,發現醒著多半是閒置休眠機制失靈,倒也沒特別調查。今天心血來潮挖了一下,發現一個祕密—原來我的 Windows 10 固定每天早上十點多都會起床夢遊,有趣的是,起床時間還不固定,甚至有最遲 10:57...

View Article

Image may be NSFW.
Clik here to view.

【茶包射手日記】預訂五十年後執行的排程

近來異常充實,專案火燒屁股,大小茶包報案照常受理,生活好不精彩。遇到一枚奇妙茶包,追了好一會兒,謎底卻令人莞爾,為枯躁生活平添一絲趣味,特記上一筆。同事報案,表單系統在歸檔時有個錯誤重試機制,出錯時自動休眠 30 分鐘再試,另外,系統亦接受程式指定於特定時間(稱為喚醒時間)重試。監看報表出現多筆詭異喚醒時間,排定在 2058、2075、2052、2081、2068、2057、2055... 等...

View Article

Image may be NSFW.
Clik here to view.

CODE-從 JSON 提取文字內容

從檔案萃取文字部分建立索引是全文檢索的必要程序,先前介紹過為 PDF、Office 檔案產生文字索引的做法,實際開發則遇到為 JSON 建立文字索引的需求。借用上回遞迴文章的組織資料當實例,假設 JSON 格式如下:{"Name": "總經理","Children": [ {"Name": "行政部","Children": [ { "Name": "人資組" }, { "Name": "總務組"...

View Article


Image may be NSFW.
Clik here to view.

CODE-C# 程式讀取 Exchange 共用行事曆

工作遇到新需求:辦公室自動化服務希望讀取使用者行事曆,整合顯示於個人資訊頁。EWS Managed API封裝了複雜又囉嗦的 Exchange Web Service SOAP 細節,改以 .NET 程式庫形式提供電子郵件、連絡人、行事曆、公用資料夾的存取管道,是 C# 開發 Exchange 相關程式的首選。(意外發現 EWS Managed API 從 2014 起轉為 Github...

View Article

Image may be NSFW.
Clik here to view.

RSA 非對稱金鑰加解密與數位簽章筆記

用 .NET 加解密已是老生常談,.NET 內建 MD5、SHA1、RSA、AES、DES... 等雜湊及加密演算法,寫來易如反掌,網路上的文章也很多。但沒有自己整理過一次,每回要用都要爬文找半天。有些基本功不能省就是不能省,所以,我的 RSA 私房筆記來了。程式範例 1 包含:產生隨機 RSA...

View Article

Image may be NSFW.
Clik here to view.

2017 台北馬

告別 2017 的最後一場馬拉松 - 2017 台北馬。大家都知道我挑選馬拉松比賽的原則是「鍾情小而美,不愛大拜拜」,會跑台北馬自己也意外。一來是上回參加已是 3 年前,去年改了賽道加繞中正紀念堂、總統府、南門、西門,聽說變得頗不一樣,很有城市味;二來則是台北馬要抽籤,隨手登記抽中正取,原以為 7000 個名額沒啥好搶,卻驚聞不少人想跑卻抽不中,莫名覺得到嘴肥肉不能放,腦波一弱就......

View Article


Image may be NSFW.
Clik here to view.

除蟲筆記 – Thread 執行時機與 Closure

同事的 .NET 程式抓到一隻有趣的 Bug。以範例程式重現如下:staticvoid DoProcess(int idx){while (StartFlag) { Thread.Sleep(1000); Console.WriteLine( $"{DateTime.Now:mm:ss} Thread {idx} is running."); }} staticvoid Main(string[]...

View Article


Image may be NSFW.
Clik here to view.

全文檢索筆記–Windows Search SQL經驗談

因應專案需要,先前研究過 Lucene.Net。Lucene.Net 功能強大效能佳,又提供極高客製彈性,但缺點是得自己處理從 PDF、Word/Excel/PowerPoint 檔提取文字、管理索引排程,瑣碎工作不少。最後,我選擇到超市買牛奶而不自己養牛,決定借用 Windows Search 功能實作網站內容全文檢索,建個目錄把檔案放進去(txt、html、pdf、docx、xlsx、pptx...

View Article

Image may be NSFW.
Clik here to view.

ASP.NET 眼中的 ".\Blah.sqlite" 在哪裡?

同事報案,在ASP.NET 存取 SQLite 資料庫,路徑誤用 ".\Blah.sqlite" (一般多使用 Server.MapPath("~\App_Data\Blah.sqlite"),參考:App_Data的隱身特性 ),程式可以運作,以為 Blah.sqlite 檔案會出現在 bin 目錄但沒有,使用 Everything 搜尋也找不到蹤跡。這裡有個迷思,依直覺 ASP.NET...

View Article

Image may be NSFW.
Clik here to view.

【茶包射手日記】TypeScript 出現大量 is not assignable to 錯誤

同事報案,在沒動 TypeScript 的情況下,專案爆出大量 TypeScript 錯誤導無法編譯。 錯誤訊息滿是各式各樣的 A is not assignable to parameter of type B。目擊證人指出,問題出現在 VS2017 安裝更新後,VS 更新成為最大嫌疑犯。深入調查後案情逆轉,發現 TypeScript 2.3 版本被移除,專案屬性設定 TypeScript 原指定...

View Article

Image may be NSFW.
Clik here to view.

VS2017 還原 NuGet 失敗:The given key was not present in the dictionary.

由 Github 抓回開源專案研究,用 Visual Studio 2017 編譯出現錯誤,貌似還原 NuGet Package 出錯導致,錯誤訊息為 "The given key was not present in the dictionary":Restoring NuGet packages... To prevent NuGet from restoring packages during...

View Article


Image may be NSFW.
Clik here to view.

【茶包射手日記】Win10 IIS 無法啟用 32 位元模式(HTTP 503)

在工作機 IIS 測試 ASP.NET 網站,得到「An attempt was made to load a program with an incorrect format /試圖載入格式錯誤的程式」,這是經典問題,一看訊息就知是 32/64 位元版本不對,好發於在 x64 Windows 使用 32 位元 Oracle Client 的情境。基本上只需在 IIS AppPool 進階設定啟用...

View Article

Image may be NSFW.
Clik here to view.

閱讀筆記:人工智慧簡史

讀到保哥推薦的好文章: 從人工智慧、機器學習到深度學習,你不容錯過的人工智慧簡史 - INSIDE 硬塞的網路趨勢觀察這一年來,人工智慧、機器學習、深度學習等名詞無所不在,一直開啟慈禧太后模式視若無睹充耳不聞也不是辦法,身為連院子都沒踏進的門外漢,讀完這篇文章算是有了概念摸到電鈴,未來聽人豪洨提及這些名詞不再一臉茫然。簡單摘要如下:「人工智慧」( Artificial Intelligence,...

View Article


Image may be NSFW.
Clik here to view.

2017 歲末雜記

2017 最後一天,聊點風花雪月生活瑣事當作句點。馬口魚去年底拿塑膠收納箱搞起生態池,種水草養螺不過癮,元旦跑去溪邊撈了小魚回家養。由於裝備業餘技巧拙劣,能抓到的盡是 1 到 1.5 公分不等的幼幼魚,回家爬文依其特徵判斷為馬口魚(之前曾在 FB 亮相)。不知不覺己整整養了一年,留下一尾「藍波」,身長約十公分。生態池僅能俯拍加上魚兒動作敏捷,只拍到模糊照片充數!...

View Article

Image may be NSFW.
Clik here to view.

【茶包射手日記】用 USB 安裝 Win10 找不到媒體驅動程式

2018 開春第一砲包。元旦在家當工具人,幫小閃光的 Toshiba 小筆電重灌 OS。Windows 10 1709 的 ISO 檔超過 4.8 GB 燒不進 DVD... (登楞) 被逼著第一次體驗用 USB 行動碟裝機。製作開機 USB 有個超好用的工具...

View Article


Image may be NSFW.
Clik here to view.

閱讀筆記:Intel CPU 漏洞問題

整理一下這兩天的超大條資訊新聞 – Intel 這十年來製造的 CPU 都存在一個漏洞,可能讓攻擊者偷走存在記憶體裡的機密資料,不管你是用 Windows、Mac 還是 Linux 都會中獎,當今之計是靠更新作業系統補救,但要付出電腦變慢 5% – 30% 的代價。Google Project Zero 團隊發現當今 CPU 採用的「推測執行」(speculative...

View Article

Image may be NSFW.
Clik here to view.

野人獻曝 - 極簡風格 .NET Stopwatch 計時法

在 .NET 要測量執行時間,Stopwatch 是最簡單直覺的做法,像這樣:Stopwatch sw = new...

View Article

Image may be NSFW.
Clik here to view.

Request.Url.Host 偽造實驗

我有個 IIS 網站同時繫結多個 IP,想做到依據連上的伺服器 IP 授與不同權限,例如: 有些功能開放外網 IP 連入使用,某些功能限定內網及 localhost IP 才能用。設立兩個站台繫結不同 IP 及 Port 但共用同一份 ASP.NET 程式碼是一種解法,但我貪圖共用 Process 及靜態物件的便利性,因此要研究正確識別 Request 伺服器來源 IP...

View Article
Browsing all 2311 articles
Browse latest View live