Darkthread

黑暗執行緒
  • 使用 Open XML SDK 在 Word 插入圖片

    客戶提了需求,套表應用想在文件範本的特定位置插入圖片。花了點時間研究如何用 OpenXML SDK 實現,以下是我的筆記。 Word docx 其實是一個 ZIP 檔,文件主體是一份 XML。如果你有興趣研究,可以將 docx 更名成 zip 解壓縮(或在 docx 按右鍵選單直接用 7-Zip 解開),其中 word 資料夾有一個 document.xml,打開它會發現 Word 文件是由一堆 <w:p> 包 <w:r> 組成,其中 <w:p> 對應到 Open...
  • Notepad++ 7.5 取消預設安裝 Plugin Manager

    在新安裝的 Notepad++ 找不到 Plugin Manager 可用,先前遇過安裝 64bit 版本有些 Plugin(插件) 無法使用,但確定我裝的是 32bit 版本沒錯,所以是哪邊出了問題? (什麼? 你沒聽過 Notepad++,快安裝它取代記事本 Notepad 吧! 好用豈止十倍? 而且還是台灣開發者的開放原始碼專案,舉世聞名獲獎無數,又一項台灣之光! 維基百科 ) Release Note 載明預設安裝的插件只剩 NppExport、 Converter、Mime Tool,確實未包含...
  • 【茶包射手日記】Win7 + Chrome 才看得到的網頁特殊字元

    使用者報案網頁多了一個像 L 的字元,在同事的電腦可重現,但在我的機器卻看不到。進一步測試,發現這個像 L 的字元在同事的 Windows 7 要用 Chrome 才會出現,用 IE 看不到;而在我的 Windows 10 上,不管用 Chrome、IE 還是 Firefox 都看不到。透過 F12 開發者工具鎖定可疑字元,複製貼上到 中文編碼解析工具 ,發現原來是 ASCII 0x03 字元,有可能是網頁製作者從 Office 文件複製貼上被夾帶過來的。ASCII 0x03 這類控制碼字元,看不見是合理的...
  • 2017 根除小兒麻痺扶輪社公益路跑

    避暑沈寂了大半年,下半年第一場馬拉松登場 - 2017 扶輪社根除小身麻痺公益路跑。(學到新單字 POLIO - 小兒麻痺,目前全球僅存阿富汗及巴基斯坦仍有病例,扶輪社長期致力於讓小兒麻痺從地球絕跡,並可望 於今年提前達標 ) 跟觀音山馬一樣從微風運河出發,繞河畔一周近 4 公里再進入河濱。多雲無風,溫度 22 度左右,是慢跑的好天氣。 六點多,朝陽從雲間探出頭來,難得一睹日出美景~ 跑淡水河左岸必經的關渡大橋,拍到有點膩了,但沒拍又怪怪的,所以來一張吧。 看到有人開著小船(如下圖)在河中央撒網捕魚...
  • Oracle 自訂函式查詢加速密技–Scalar Subquery Caching

    在 SELECT 指令對欄位執行自訂函式行運算通常很傷效能,但實務上無法完全避免。查詢一萬筆資料代表要呼叫自訂函式一萬次,若函式包含資料表查詢,如同在迴圈裡跑 SQL,是典型的效能殺手,經驗裡也是許多複雜查詢逾時的主因。 見識到同事露了一手,簡單加幾個字元一口氣將內含自訂函式的 Oracle SELECT 加速數十倍! 瞠目結舌之餘,立馬實驗證明效果驚人,特筆記並分享如下。 以下為實驗環境,JeffTest 資料表有 IDX, N 兩個 NUMBER 欄位,先塞入 256 筆資料,IDX 由 0...
  • 為 PDF、Office 檔案產生文字索引

    遇到文件檔全文檢索需求,打算用 SQL Server 全文檢索或 lucent.net 實現,無論使用何者都免不了從 Word、Excel、PowerPoint 或 PDF 檔萃取純文字內容建立索引的程序。經簡單評估,使用微軟的 IFilter 介面 應是較簡單可行的做法。搜索引擎面對的檔案種類五花八門,不太可能涵蓋各種檔案格式,知道從中取出文字內容的方法,IFilter 制定統一程式介面,不管檔案格式為何,只要廠商或第三方有提供專屬 IFilter,搜尋引擎便可使用呼叫統一的 API 方法傳入檔案名稱取得文字內容...
  • 【茶包射手日記】只能跑 32 位元的 AnyCPU .NET 程式

    測試某個 COM+ 元件應用專案,開發者所附的範例專案測試成功,我自己新增 Console Application 或 Windows Form 專案則卡在找不到 Registry 無法執行。強烈懷疑與 x86/x64 有關,由於只有註冊 64 位元 COM+,專案跑 x86 找不到 Registry 是意料中事,但詭異之處在於我已確認過範例專案跟我新增的專案都是設 Any CPU 無誤,甚至放在同一個 Solution 測試,卻一個成功一個失敗。 實測將新增 WinForm 或 Console...
  • IE showModalDialog + IFrame 內嵌網頁無法複製貼上

    今天遇到的奇妙 IE 問題。同事報案,有個網頁單獨開啟操作正常,使用 ModalDialog 顯示時無法複製貼上。( Ctrl-C/Ctrl-V 快速鍵與右鍵選單同步失效) 深入研究後發現這現象在特殊條件下才會發生: 網頁 A 先以 showModalDialog 顯示網頁 B,網頁 B 以 <iframe> 內嵌來自另一站台的網頁 C,此時在網頁 C 上將無法執行複製貼上作業。 使用以下程式重現問題。 Parent.html 以<iframe>內嵌跨站台(localhost...
  • JavaScript 中文排序問題

    今天才發現 JavaScript 中文字串排序有個大問題! 下圖是 KendoGrid 在 Chrome 使用 JavaScript 排序的結果,如圖所示,一到七由小到大排序結果為一、七、三、二、五、六、四,既不是依筆劃,也不是依注音: (SQL 的中文定序就區分筆劃跟注音,例如: Chinese_Taiwan_Stroke_CI_AS vs Chinese_Taiwan_Bopomofo_CI_AS 參考 ) 爬文後得知這是 JavaScript 中文字串排序的己知問題(我 Lag 真大),字串型別有個...
  • Vue筆記3-Vue TypeScript 定義檔簡便做法

    要用 TypeScript 寫 Vue 程式,首先要取得 Vue.js TypeScript 定義檔才能享受強型別的好處。 Vue 2.0 釋出於 2016/9/30(最新版為 2.5 版),NuGet 上的 vue.TypeScript.DefinitelyTyped 更新時間為 2016/9/26,版本只到 1.0,己不適用最新版 Vue.js。(前端開發者已多改從 npm 體系取得定義檔,猜想 NuGet 定義檔因此不再更新) 因此,我們可改由 Vue Github 取得最新定義檔: https...
  • Vue筆記2-在 ASP.NET 專案使用 Vue.js

    相信大家看完 官方教學 已經躍躍欲試,就讓我們動手在 VS2017 ASP.NET 專案開個網頁試試 Vue.js。 好消息是 NuGet 上使用 vue 關鍵字就能找到 Vue.js 作者(Evan You, 尤雨溪 )自己維護的 Vue 套件,Developer 版本包含較完整詳細的錯誤訊息, 如果你沒有自虐傾向,建議裝 Vue.js.Developers.Version 建議裝第一項 vue,它同時包含 vue.js (Developer 版) 與 vue.min.js (Production...
  • 小黑 ThinkPad 懷舊暨迎新

    我人生買的第一台筆電是小黑 ThinkPad X21,CPU 是當年的主流 Pentium III 700MHz,記憶體還插滿封頂直上"384M"呢! 加上 Dock 有的沒的,十幾年前一口氣花掉菜鳥工程師兩個月薪水。仗著經常在外遊走唬爛工作需要,高舉「投資自己」大旗,說穿了也在享受敗家樂趣 XD 當年能從電腦背包掏出一台輕薄小黑做簡報,講得好不好是一回事,光氣勢就取得先機。不過不得不承認,小黑在設計、用料方面真沒話說,踩上去也不會壞的螢幕背蓋、貼心的鍵盤頂燈、比觸控板更精準易控的小紅點...
  • Vue 筆記1–也來寫 Vue.js 好了

    觀注 Vue.js 已有很長一段時間,上個月我慣用的前端元件庫- Kendo UI 正式支援 Vue 及 React ,感覺時機成熟,是可以投入心力研究的時候了。 說來尷尬,手邊已有用 knockout.js 開發的線上系統,開發專案的主力則走 Angular.js 1。短短幾年就在公司裡搞出兩套框架(我還為 KO 跟 NG 都寫了 CRUD 基礎模版及元件庫),讓同事無所適從 天怒人怨 (我也是萬般不願意呀,這就是他X的前端咩),貿然宣布要玩第三套新框架,有預感會被拖到牆角餵磚頭。 不過衡量情勢...
  • TypeScript Module 簡單練習

    ES6 引進 Module(模組化) 概念,每個 Module 自成獨立 Scope,各 Module 可自由定義變數、型別,要開放外界存取的項目再透過 export 開放。當需要引用其他 Module 時,則必須明確使用 import 匯入才能使用。如此各 Module 可獨立開發維護而不彼此干擾,甚至能實現需要時再動態載入,大幅提升開發及應用彈性。 TypeScript 也支援 Module,我目前的專案沒用到這麼高級的技巧,原本並不打算深入了解,但發現苗頭不對。開源專案如 Angular 2...
  • 擦屁股的藝術 – 聊聊前人 Bug 的緊急修補

    身為程式開發人員,多少都有這種經驗: 線上系統出錯,原開發者已浪跡天涯,程式碼沒人熟,老闆面色猙獰問誰會修。 (遇到這種擦屁股的屎缺,同事們默契十足全都退了一步 ) 老闆說「很好,想不到你剛進公司就想立此奇功!好好幹,公司不會虧待你的」... 你說 「暗陰羊咧,陳近南是你?」 「沒問題,這交給我!」(心中滿是狂奔的羚羊) 這類狀況跟修自己的 Bug 截然不同,有幾個特點: 狀況緊急必須限時修好,砍掉重練不是選項。 屬臨時救急,策略上不打算多花資源深入了解及翻修。例如: 有計劃另建新系統取代,舊系統已進入插管維生階段...
更多文章 « 上一頁 - 下一頁 »
Powered by Community Server (Non-Commercial Edition), by Telligent Systems