如何將自訂參數傳入 Installer 類別的 Install 方法 ( Part 2 )

若希望可以在透過 msiexec 進行靜默安裝時能夠傳入自訂的屬性(PROPERTY)到自訂動作(Custom Action)中,然後再透過自訂動作的 CustomActionData 屬性傳入實做自訂動作的 Installer 類別中,之前試過一次但不成功,還以為是 Msi 格式的限制,直到最近我終於找出方法與真正的限制所在了。

... 繼續閱讀 ...

如何對 [Windows 服務] 與 [安裝專案的自訂動作] 進行除錯

雖然 MSDN 的 HOW TO:偵錯 Windows 服務應用程式 文件有教如何除錯,但是這樣的除錯有個大缺點,就是有時後程式碼是在 OnStart 事件一開始的時候就發生問題的,有時後就會因為來不及 附加 (Attach) 程序導致無法除錯。另外,對於「安裝專案」內的「自訂動作」由於是在專案的 Installer 類別中執行的,所以要對「安裝專案」進行除錯也不太容易。我今天就來分享幾個很簡單又有效的除錯密技。

... 繼續閱讀 ...

PowerCommands 在安裝 VS2008 SP1 後無法正常開啟頁面

其實我 Visual Studio 2008 Service Pack 1 已經安裝很久了,但不知何時開始我的 Visual Studio 只要開啟 *.aspx 或 *.master 檔案都會直接掛掉 ( 整個視窗不見 ),找來找去才發現原來是 PowerCommands 的關係,只要移掉就好了。不過 PowerCommands 這麼好用,我實在不忍心就這樣移除,最後也找到了解決方法。

... 繼續閱讀 ...

Web Deployment Project 如何自訂 AfterBuild 目標(VS2008)

在我上次介紹 Web Deployment Projects 的文章中有提到你可以自行修改 Web Deployment Project ( WDP ) 的專案檔( *.wdproj ) 的內容,因為此專案檔實際上是透過 MSBuild 編譯執行的,你可以自行擴充 BeforeBuild, BeforeMerge, AfterMerge, 或 AfterBuild 目標,不過當 WDP for VS2005 升級到 WDP for VS2008 時有做出一些調整,會導致有些自訂動作怎麼寫都不成功。

... 繼續閱讀 ...

使用超高效率的 NTrace 套件追蹤 .NET 程式執行效能與除錯

上週我親自跑去基隆處理一個程式問題,由於當場的環境缺乏檢測工具,且我們之前的程式 ( Windows 服務 ) 並沒有寫很多追蹤(Trace)的程式碼,只有將一些摘要資訊寫入 EventLog,導致在當場花了許多時間,而且最後還是沒有抓出問題,白白浪費了一個下午。

... 繼續閱讀 ...

如何將 Visual Studio 2008 的 prop 程式碼片段換成舊版的

我們常用的 prop 程式碼片段(Code Snippet)可以自動產生一組 Property 屬性的定義,從 Visual Studio 2005 就有了。由於 C# 3.0 新增了一個功能叫做 Automatic properties,可以簡化 Property 的定義語法,導致 Visual Studio 2008 預設的 prop 程式碼片段都被換成「新版」的了。雖然一開始覺得蠻方便的,但是當 Property 需要客製化調整的時候 ( 使用舊語法 ) 就反而變的礙手礙腳的。

... 繼續閱讀 ...