前幾天在 Reference Source Code Center Team Blog 已經公告 .NET Framework 3.5 SP1 的部分原始碼已經掛到 Reference Source Code Center (RSCC) 伺服器了,這代表各位可以在 Visual Studio 2008 中針對這些已開放的組件進行原始碼偵錯,另一方面也可以從 .Net Framework Library 學習到更深的技術細節。
... 繼續閱讀 ...
當我想查詢自己電腦主機的硬體資訊時,在以前我最愛用的軟體是 EVEREST Home Edition,不過缺點是 EVEREST Home Edition 無法在有 AD 的環境下使用,自從我公司導入 AD 之後我就再也沒在用了。但最近我找到了 HWiNFO32™ 免費軟體,功能一樣強大、資訊一樣很清楚。
... 繼續閱讀 ...
之前我有寫過一篇開發 ASP.NET 使用 SQL Server 2000 要注意權限是否足夠,但同樣的問題今天又有同事遇到了,不過當我要將該使用者設定為該資料庫的擁有者時,SQL 2000 卻回應我「規劃的新資料庫擁有者已經是資料庫的使用者」錯誤訊息,不過用這段訊息去搜尋什麼也找不到,通常我都將特定的關鍵字翻譯成英文後再去查詢就會查到了,而這段話的英文其實是 "The proposed new database owner is already a user in the database",當然,我也因此找到了解答。
... 繼續閱讀 ...
FxCop 是一種靜態程式碼分析工具,主要是用來分析採用 .NET 技術開發的組件(Assembly)品質,其中分析的規則也多達上百條(FxCop 1.36 預設有 197 種規則),並依照不同的領域分門別類,大致有以下類別:
... 繼續閱讀 ...
前天我有提到如何在 Visual Studio 中利用 Attach to Process 功能可以對任意執行中的程式進行除錯。但有時後程式一啟動就立即發生錯誤,導致程式難以除錯,遇到這種情況其實在 Visual Studio 也是有解的!
... 繼續閱讀 ...
手動設定網址對應 IP 的技巧其實是很基礎的系統管理知識,不過好像還是有許多新手開發人員不知道可以這樣設定,今天我就來說說這個好用的技巧。
... 繼續閱讀 ...
在 Visual Studio 2005/2008 的[工具]選單中有個 Attach to Process 功能,可以將目前正在執行中的程序「附加」到 Visual Studio 的除錯工具(Debugger)中,讓 Visual Studio 隨時可以對任意程序進行除錯工作。這是個很方便的功能,你甚至可以不用先開啟方案檔或專案,就可以直接透過 Attach to Process 功能進行除錯,當然這也包括針對 Internet Explorer 進行除錯。
... 繼續閱讀 ...
我們其實可以透過許多工具取得 .Net 應用程式執行時在記憶體中的資料,例如:WinDbg 或 Debug 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 個連線數給佔滿了,導致其他人想連都連不進去。錯誤訊息如下:
... 繼續閱讀 ...
我們通常在寫 LINQ to SQL 專案時,都會利用 Visual Studio 2008 內建的 LINQ to SQL DBML Designer 讓我們透過視覺化的介面將資料庫表格、檢視表或預儲程序從 Server Explorer 拖曳到設計視窗中,不過缺點就是當資料庫結構(DB Schema)改變了之後就需要跟著修正,我通常有以下選擇:
... 繼續閱讀 ...
我們之前有位新手工程師(現在已經不新了)曾經在 ASP.NET 中使用 Environment.CurrentDirectory ( 取得目前之工作目錄的完整路徑 ) 來存取網站內的檔案,一般來說很少有人會用 Environment.CurrentDirectory 來存取網站上的檔案路徑,我自己猜測應該是一般的 C# 書籍都是用 Console Program 來撰寫範例,所以可能是新手上路搞不清楚狀況才這樣寫,而且在 Visual Studio 的開發環境中這樣使用還真的不會出錯呢!所以才導致新人一直使用錯誤的方法開發,直到程式被部署到測試主機後才發現程式無法執行。
... 繼續閱讀 ...