Pages

2015-02-25

App.exe.config設定檔使用細節

VS開發環境提供一個簡易好用的Settings Designer工具, 可以將軟件設定值寫入App.exe.config檔案裏,並自動生成一個強型別的Settings類別,方便在程序裏讀寫。

Solution Explorer

this.label1.Text = Properties.Settings.Default.SettingName1;

使用強型別的屬性讀取方式雖簡易,但要特別注意此Setting Property讀取效能的陷阱,不要直接在大量loop裏讀取,先讀取到區域變數裏。

Designer裏的設定值Scope有兩類。Application類的值唯讀不能改,讀取exe存放在同階目錄下之App.exe.config。User類的雖可修改,但其值儲存在C:\Users\[UserName]\AppData\Local\[AppName]\[AppName_EvidenceType_EvidenceHash]\[Version]\user.config,該位置考量多User的安全權限,因此存放路徑不能改變,但這違反了綠色軟件的同目錄原則。

Setting Designer

因此統一使用Application類的設定值是比較好的,當要修改其值時,另外用XmlDocument類別修改檔案xml內容即可,其檔案路徑為「AppDomain.CurrentDomain.SetupInformation.ConfigurationFile」。
以下是自訂處理類別的範例:

AppConfigHelper settings = new AppConfigHelper(file);
settings["a"] = "123";
string s1 = settings["b"];
settings.Save();

若程式在讀取設定值時發生「System.Configuration.ConfigurationErrorsException」例外錯誤,除了注意App.exe.config是否格式錯誤外,也有可能是之前舊user.config檔仍存在造成的衝突,刪除該檔即可。

2015-02-18

鈕扣強力磁鐵(Magnet)的妙用

因為18650充電電池正極大部分是平頭設計(凸頭比較貴),因此買了一顆鈕扣強力磁碟作連接物,以增加接觸面積。後來發現這顆磁鐵不僅便宜,在生活中也有很多妙用,例如放在起子末端處,就可讓原本沒磁性的螺絲起子吸附小螺絲,而不需要費勁地利用兩鐵棒交碰生磁。
Magnet

2015-02-11

PotPlayer頁籤管理(Bookmark)及常用熱鍵(HotKey)

PotPlayer是目前最受歡迎的桌面媒體播放程式,因為它是KMPlayer原作者離開舊公司重新開發的,大幅優化了影片播放效能,並提供許多影片解編Codec支援,而且還有免安裝綠化版本可下載

觀看影片時,可以在影片的任何播放點作Bookmark註記,即可快速跳躍回撥。它提供的熱鍵是P,而呼叫頁籤管理的熱錄是H。

Bookmark

它也提供AB片段Repeat重複播放的功能,只要按左右中括號即可,即可重播該精彩片段,高潮不中斷。

AB Repeat

此外最常記憶的PotPlayer操作熱鍵是:

  • Space空白鍵 => 暫停(Pause)/播放(Play)切換
  • Enter鍵:全螢幕(Fullscreen)切換
  • Left/Right方向鍵: 快速前後5秒影片跳躍
  • Up/Down上下鍵:音量(Volume)高低調整
  • 1234上方數字鍵 => 播放視窗Size調整

2015-02-05

Firefox轉貼頁面網址利器: Easy Copy

此擴充套件的功用就是複製目前頁面的Tab名稱(下圖編號1)及網址(下圖編號2),方便我們轉貼連結給他人時,讓別人一目瞭然。它還會貼心地把中文網址轉成URL編碼字串,方便別人直接點轉貼來的Link即可(中文網址會破壞Link字串的可直接點擊性)。

EasyCopy Target
 
請安裝Firefox Add-on: Easy Copy 5.2
https://addons.mozilla.org/en-US/firefox/addon/easy-copy/?src=search

EasyCopy AddOn

安裝後,Firefox瀏覽器觀看網頁時,在頁面內容按右鍵就能出現Easy Copy的功能選單(下圖編號2),其項目可以挪至第1階主選單(如下圖編號1):

EasyCopy Menu

以下是進入Easy Copy的設定(Options)裏,新增「Copy Tabs Title + Link」項目的範例。其中編號3是內容範本,可使用預先定義的功能變數(請參照其他項目內容範例)。編號4是為了讓這項目出現在第1階選單(Main Menu),簡化右鍵操作。

EasyCopy Option

這個擴充套件是我見過寫得最靈活的(因為能自訂輸出格式),Chrome瀏覽器上的Tab Copy擴充套件還比不上它。

2015-02-04

Chrome轉貼頁面網址利器: TabCopy

此Extension套件的功用就是複製目前頁面的Tab名稱(下圖編號1)及網址(下圖編號2),方便我們轉貼連結給他人時,讓別人一目瞭然。它還會貼心地把中文網址轉成URL編碼字串,方便別人直接點轉貼來的Link即可(中文網址會破壞Link字串的可直接點擊性)。
Copy Tab Title + URL
請安裝Google Extesion: TabCopy (***此套件已不推薦,建議使用「TabCopy」套件取代, 2015/03/13 updated***)
https://chrome.google.com/webstore/detail/tabcopy/micdllihgoppmejpecmkilggmaagfdmb
安裝後,Chrome瀏覽器觀看網頁時,其網址處右邊會有一個複製按鈕(如下圖編號2),當點擊它時就會把該網頁的Tab Title + URL複製至剪貼簿中,就可以直接貼給別人。
TabCopy Extension
目前這套件發現有幾個問題,但瑕不掩瑜仍值得必裝:(2015/02/03測試v1.3版)
  1. 某些網頁的網址列複製按鈕圖示會消失,請Reload此頁面就會出現該圖示了。
  2. 目前輸出字串格式為「Tab Title + URL」,尚不直接自行設定輸出格式。