當我使用VS2010 SP1時,我編寫了一個windows服務。現在我想調試它而不安裝它。所以我寫的代碼如下Program.cs的主要方法:使用預處理器指令在Visual Studio中調試WindowsService #if
#if (DEBUG)
ControllerNTService service =new ControllerNTService();
Console.ReadLine();
#else
System.ServiceProcess.ServiceBase[] ServicesToRun;
ServicesToRun = new System.ServiceProcess.ServiceBase[] { new ControllerNTService() };
System.ServiceProcess.ServiceBase.Run(ServicesToRun);
#endif
我預計在2010年VS不過VS調試Windows服務,代碼行下面顯示灰色。這意味着灰色代碼無效,對嗎? (兩條線是灰色的)
ControllerNTService service =new ControllerNTService(); Console.ReadLine();
如果代碼是有效的,我想我能碰上他們。
另一個問題,使用上面的代碼,當我按F5調試它,它表明它不能調試它,我需要先安裝服務。
我希望有人遇到類似的問題來指導我。 祝您有美好的一天
非常感謝您的回覆。其實,我把我的項目定義爲「調試」模式。現在,我遇到了兩個問題。第一個是VS禁止我調試。當我按F5進行調試時,VS顯示一個對話框「無法從命令行或調試器啓動服務」。必須首先安裝Windows服務(使用installutil.exe)......「。第二個是我在#if #else中的代碼顯示爲灰色。這意味着代碼無效。 – 2012-04-25 08:51:13