除錯windows服務最簡單的方法之一

2022-04-19 09:26:15 字數 1245 閱讀 8687

using system;

using system.collections.generic;

using system.linq;

using system.serviceprocess;

using system.text;

namespace windowsservice1

else

;servicebase.run(servicestorun);}}

}}

using

system;

using

system.collections.generic;

using

system.componentmodel;

using

system.data;

using

system.diagnostics;

using

system.linq;

using

system.serviceprocess;

using

system.text;

namespace

windowsservice1

protected

override

void onstart(string

args)

protected

override

void

onstop()

internal

void

debugstart()

internal

void

debugstop()

private

void

servicestart()

private

void

servicestop()

}}

關鍵就在對environment.userinteractive的判斷上,

請看msdn上面的解釋:

獲取乙個值,用以指示當前程序是否在使用者互動模式中執行。

userinteractive 屬性為執行時無使用者介面的 windows 程序或乙個服務(如 iis)報告 false。 如果此屬性為 false,請不要顯示模式對話方塊或訊息框,因為沒有用來與使用者進行互動的圖形使用者介面。

然後看一下service1.cs中的**:

最後:更改project的輸出型別

ok啦,按f5試試

**自

Windows服務程式的除錯

摘自 msdn 1.由於服務必須從服務控制管理器的上下文中執行,而不是從 visual studio 中執行,因此除錯服務不像除錯其他 visual studio 應用程式型別那樣簡單。若要除錯服務,必須首先啟動服務,然後將乙個偵錯程式附加到正在執行服務的程序中 attachtoprocess 附加...

史上最簡單的windows程式

一直想把mfc與sdk聯絡起來,似乎難以直接查到相應的資料.前不久,一位發布了乙個帖子,題為 書上例子也有錯誤嗎?更使得我這個想法變得明確.對於sdk來說,不必這麼複雜.以下是所給出的程式 cpp demo2 2.cpp a message box define win32 lean and mea...

最簡單的WINDOWS程式詳細解析

以下 是dev c 自動生成的 include 引用windows的標頭檔案 lresult callback windowprocedure hwnd,uint,wparam,lparam int winapi winmain hinstance hthisinstance,hinstance h...