程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> .net開發windows服務小結,.netwindows小結

.net開發windows服務小結,.netwindows小結

編輯:C#入門知識

.net開發windows服務小結,.netwindows小結


    今天學習了在.net下創建一個windows服務,總結一下學習心得。     開發環境:visual studio 2012   一、編寫程序   (1)創建一個空解決方法   (2)添加一個控制台應用程序項目   (3)添加一個Windows服務,如下所示:     (4)右鍵 查看代碼      看到如下代碼:
public WindowsService()
{
    InitializeComponent();
}

protected override void OnStart(string[] args)
{
            
}

protected override void OnStop()
{
            
}

  其中,OnStart方法在 啟動服務時執行;OnStop方法在 停止服務時執行;還有兩個重載方法:OnPause、OnContinue,分別在 暫停服務時執行、恢復服務時執行;它們對應於下圖所示的操作:

  

  (5)添加代碼:  

private Thread timerThread;
/// <summary>
/// 啟動服務時執行
/// </summary>
/// <param name="args"></param>
protected override void OnStart(string[] args)
{
    File.AppendAllText("D:\\1.txt", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + ":windows服務開始工作!\r\n", Encoding.Default);
    timerThread = new Thread(new ThreadStart(Start));
    timerThread.Start();
}

/// <summary>
/// 停止服務時執行
/// </summary>
protected override void OnStop()
{
    timerThread.Abort();
    File.AppendAllText("D:\\1.txt", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + ":windows服務結束工作!", Encoding.Default);
}

private void Start()
{
    while (true)
    {
        using (StreamWriter writer = new StreamWriter("D:\\1.txt",true,Encoding.Default))
        {
            writer.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + ":每十秒鐘輸出一次!");
        }
        Thread.Sleep(10 * 1000);
    }
}

 

  (6)安裝程序,設置屬性

  在設計器中添加安裝程序

  

    會生成一個ProjectInstaller.cs文件,如下圖所示:

    

    然後需要做兩件事情:

      ①設置serviceProcessInstaller1控件的Account屬性為“LocalSystem”

      ②設置serviceInstaller1組件的StartType屬性為Automatic,把服務設置為自動啟動

  (7)啟動服務

    打開vs的開發人員命令提示 工具 以管理員身份運行

    

    執行如下所示命令:

    

    ①進入到項目所在文件夾,並進入\bin\Debug\路徑下

    ②安裝服務命令:installutil ConsoleApplication.exe,然後就可以在服務列表中看到我們啟動的服務:

    

    卸載服務的命令是:installutil /u ConsoleApplication.exe

    當我們修改代碼後,需要把服務先卸載,才能重新生成成功

    ③啟動服務

      啟動服務後,等一會兒再停止服務,然後我們打開D盤下的1.txt文檔,可以看到下圖所示的結果:

    

 

二、調試

  在服務運行的狀態下,我們找到菜單欄,調試——>附加到進程

  

  注意勾選“顯示所有用戶的進程”,選項,找到我們的進程,點擊附加,然後在程序中添加斷點,就可以調試程序了!

  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved