我在C#(4.0)中創建了一個Windows服務,並試圖在命令行中使用installutil工具進行安裝。但是我得到一個例外。我設法找出我的代碼的哪部分導致異常 - 使用一些糟糕的日誌記錄,但是什麼 - 但現在我想明白爲什麼。所以我想要做的是調試我的Windows服務的安裝。如何調試自定義Windows服務的安裝?
我知道如何調試服務本身,但在這裏,我想調試我的Installer.Install(IDictionary stateSaver)
方法在服務中的內容。
我試圖將調試器附加到cmd.exe過程,但它顯然不工作。我也在考慮將調試器附加到installutil進程,但我不知道如何做到這一點。
我看過這篇文章:How do you debug a windows service that is being installed?和其他幾個人,但在這種情況下,出於某種原因,這傢伙似乎有他的服務已在services.msc這不是我的情況。
我該如何做到這一點?
究竟是在安裝Windows服務你得到的例外呢? – abhilash 2012-02-29 11:46:40
@ABKolan我在這個構造函數的一個對象上的一個'NullReferenceException'引發的類的靜態構造函數上使用(和我創建的)的'TypeInitializerException'。該對象與我創建的一些自定義配置類有關。奇怪的是,這段代碼也被另一個服務使用,並且一切正常。這就是我想要調試安裝過程的原因。 – Guillaume 2012-02-29 11:50:06
使用http://stackoverflow.com/a/9498566/64497 – abhilash 2012-02-29 11:52:55