The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

使用 SecureString 類別保護你的字串值

我們其實可以透過許多工具取得 .NET 應用程式執行時在記憶體中的資料,例如:WinDbgDebug Diagnostic Tool。而當你在 .NET 程式中需要將一些較機密的資料暫存在變數(物件)時,若單純的使用 System.String 類別建立執行個體(Instance)儲存資料,就很容易被一些除錯工具或傾印(dump)工具取得原始資料,原因是 System.String 類別是不變的(immutable),且當不再需要它時也無法透過程式排程進行記憶體回收。所以當你使用 System.String 類別儲存文字內容在記憶體中,就很難保證在物件不用了之後能夠即時在記憶體中刪除,這樣的程式就有被資訊揭露(Information Disclosure)的安全風險。

... 繼續閱讀 ...

如何設定遠端桌面斷線超過時間自動登出

因為 Windows Server 2003 預設只提供兩個同時遠端連線的授權,若是要使用超出 2 個連線以上的要求,就必須安裝 Terminal Server 與 Terminal Server Licensing 並購買足夠的授權才能用,一般來說主機不會讓太多人管理,所以大多不會使用那麼多的授權數,兩個應該很夠了。不過,使用遠端桌面(Remote Desktop)最討厭的就是有人「佔著茅坑不拉屎」,登入之後做完事不登出,而是直接斷線,這導致工作階段(Session)一直沒有結束,如果有兩個人同時做這件事,就把僅有的這 2 個連線數給佔滿了,導致其他人想連都連不進去。錯誤訊息如下:

... 繼續閱讀 ...

改用 SqlMetal.exe 建立 LINQ to SQL 的 DBML 檔

我們通常在寫 LINQ to SQL 專案時,都會利用 Visual Studio 2008 內建的 LINQ to SQL DBML Designer 讓我們透過視覺化的介面將資料庫表格、檢視表或預儲程序從 Server Explorer 拖曳到設計視窗中,不過缺點就是當資料庫結構(DB Schema)改變了之後就需要跟著修正,我通常有以下選擇:

... 繼續閱讀 ...

開發ASP.NET請不要使用 Environment.CurrentDirectory

我們之前有位新手工程師(現在已經不新了)曾經在 ASP.NET 中使用 Environment.CurrentDirectory ( 取得目前之工作目錄的完整路徑 ) 來存取網站內的檔案,一般來說很少有人會用 Environment.CurrentDirectory 來存取網站上的檔案路徑,我自己猜測應該是一般的 C# 書籍都是用 Console Program 來撰寫範例,所以可能是新手上路搞不清楚狀況才這樣寫,而且在 Visual Studio 的開發環境中這樣使用還真的不會出錯呢!所以才導致新人一直使用錯誤的方法開發,直到程式被部署到測試主機後才發現程式無法執行。

... 繼續閱讀 ...

撰寫跑馬燈/廣告輪播的好工具:jQuery Cycle Plugin

jQuery 是我最常用的 JavaScript Library,而且外掛程式超多,有空的人是可以多上去看看有什麼新玩意,保證有許多驚喜!我大約是在一年前得知有 jQuery Cycle Plugin 這個 jQuery 外掛套件吧,當時為了找一個可以「跨瀏覽器」的廣告輪播套件找了好久,也試用了好幾套,不過大部分廣告輪播或跑馬燈的 JavaScript Library 都不盡理想,最後才選擇用 jQuery Cycle Plugin 來做為跑馬燈/廣告輪播的撰寫工具。

... 繼續閱讀 ...

介紹幾個 PowerPoint 在播放時常用的快速鍵

你在做簡報的時候會不會在解說的時候一直移動滑鼠,只為了讓「滑鼠指標」出現,但只要過 3 秒又會自動消失,然後你還要一直移動、一直移動滑鼠才會讓滑鼠指標再出現。我上週去一家公司簡報的時候就遇到這種窘境,客戶還開玩笑的跟我說:「你要不要雷射筆,我看你用滑鼠用的很辛苦」。

... 繼續閱讀 ...

.NET 3.5 Enhancements Training Kit RTM

之前在 Visual Studio 2008 推出的時候,同時也推出了一套 Visual Studio 2008 and .NET Framework 3.5 Training Kit 訓練教材,可供開發人員下載自我學習。而隨著這次 Visual Studio 2008 Service Pack 1.Net Framework 3.5 Service Pack 1 的推出,也同時推出了 .NET 3.5 Enhancements Training Kit 訓練教材,其中包含了許多新增的範例程式、簡報、實驗演練(Labs)教材等,想學習新技術的人不用在等了,趕快下載回去自修吧。

... 繼續閱讀 ...