最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#編寫Windows服務(wù)實(shí)例代碼

 更新時(shí)間:2013年10月09日 16:37:11   作者:  
本篇文章主要介紹使用Microsoft Visual Studio2012可以很方便的創(chuàng)建一個(gè)Windows服務(wù),本例實(shí)現(xiàn)一個(gè)向D盤的txt文件里,寫入系統(tǒng)時(shí)間的Windows服務(wù)
Microsoft Windows 服務(wù)(即,以前的 NT 服務(wù))使您能夠創(chuàng)建在它們自己的 Windows 會(huì)話中可長(zhǎng)時(shí)間運(yùn)行的可執(zhí)行應(yīng)用程序。這些服務(wù)可以在計(jì)算機(jī)啟動(dòng)時(shí)自動(dòng)啟動(dòng),可以暫停和重新啟動(dòng)而且不顯示任何用戶界面。這使服務(wù)非常適合在服務(wù)器上使用,或任何時(shí)候,為了不影響在同一臺(tái)計(jì)算機(jī)上工作的其他用戶,需要長(zhǎng)時(shí)間運(yùn)行功能時(shí)使用。還可以在不同于登錄用戶的特定用戶帳戶或默認(rèn)計(jì)算機(jī)帳戶的安全上下文中運(yùn)行服務(wù)。

使用Microsoft Visual Studio2012可以很方便的創(chuàng)建一個(gè)Windows服務(wù),本例實(shí)現(xiàn)一個(gè)向D盤的txt文件里,寫入系統(tǒng)時(shí)間的Windows服務(wù)。

新建一個(gè)Windows Services工程:

 

工程創(chuàng)建好之后,默認(rèn)會(huì)有一個(gè)Services1.cs文件,刪掉此文件,重新添加一個(gè)新Item

右擊新添加的這個(gè)文件,選擇View code,可以看到,有兩個(gè)函數(shù) OnStart和OnStop,OnStart函數(shù)在啟動(dòng)服務(wù)時(shí)執(zhí)行,OnStop函數(shù)在停止服務(wù)時(shí)執(zhí)行。

這兩個(gè)函數(shù)的代碼如下:

復(fù)制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.Threading.Tasks;
using System.IO;

namespace MyFirstWindowsService
{
    partial class MyWindowsService : ServiceBase
    {
        public MyWindowsService()
        {
            InitializeComponent();
        }

        protected override void OnStart(string[] args)
        {
            // TODO: Add code here to start your service.
            FileStream fileStream = new FileStream(@"D:\MyWindowsService.txt", FileMode.OpenOrCreate, FileAccess.Write);

            StreamWriter streamWriter = new StreamWriter(fileStream);

            streamWriter.BaseStream.Seek(0, SeekOrigin.End);

            streamWriter.WriteLine("My service started" + DateTime.Now.ToString() + "\n");

            streamWriter.Flush();

            streamWriter.Close();

            fileStream.Close();
        }

        protected override void OnStop()
        {
            // TODO: Add code here to perform any tear-down necessary to stop your service.
            FileStream fileStream = new FileStream(@"D:\MyWindowsService.txt", FileMode.OpenOrCreate, FileAccess.Write);

            StreamWriter streamWriter = new StreamWriter(fileStream);

            streamWriter.BaseStream.Seek(0, SeekOrigin.End);

            streamWriter.WriteLine("My service stopped " + DateTime.Now.ToString() + "\n");

            streamWriter.Flush();

            streamWriter.Close();

            fileStream.Close();
        }
    }
}

之后需要新建一個(gè)安裝組件MyWindowsServiceProjectInstaller(右擊MyWindowsService.cs這個(gè)文件選擇view desiner,然后選擇Add Installer),需要將MyFirstWindowsServiceProcessInstaller的account屬性設(shè)置為localservice.

編寫批處理文件:

 安裝服務(wù)批處理:

復(fù)制代碼 代碼如下:

 %SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe C:\Users\gaoja1\Desktop\MyWindowsService\MyFirstWindowsService\bin\Debug\MyFirstWindowsService.exe
 Net Start ServiceTest
 sc config ServiceTest start= auto

卸載服務(wù)批處理:

復(fù)制代碼 代碼如下:

%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe /u C:\Users\gaoja1\Desktop\MyWindowsService\MyFirstWindowsService\bin\Debug\MyFirstWindowsService.exe

服務(wù)安裝好之后:





服務(wù)啟動(dòng)之后可以在D盤看到一個(gè)txt的文件,里面記錄了服務(wù)的啟動(dòng)時(shí)間.

相關(guān)文章

  • c#互斥鎖Mutex類用法介紹

    c#互斥鎖Mutex類用法介紹

    本文詳細(xì)講解了c#互斥鎖Mutex類的用法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • C#找出字符串中第一個(gè)字母并大寫的方法

    C#找出字符串中第一個(gè)字母并大寫的方法

    這篇文章主要介紹了C#找出字符串中第一個(gè)字母并大寫的方法,通過C#面向?qū)ο蟮姆绞蕉x了類的成員函數(shù)實(shí)現(xiàn)字符串轉(zhuǎn)換的功能,需要的朋友可以參考下
    2016-02-02
  • 解決WPF附加屬性的Set函數(shù)不調(diào)用的問題

    解決WPF附加屬性的Set函數(shù)不調(diào)用的問題

    這篇文章介紹了解決WPF附加屬性的Set函數(shù)不調(diào)用的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • C#獲取時(shí)間戳的方法及時(shí)間戳轉(zhuǎn)換問題

    C#獲取時(shí)間戳的方法及時(shí)間戳轉(zhuǎn)換問題

    本文主要介紹了C#獲取時(shí)間戳的方法及時(shí)間戳轉(zhuǎn)換問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • C# JavaScriptSerializer序列化時(shí)的時(shí)間處理詳解

    C# JavaScriptSerializer序列化時(shí)的時(shí)間處理詳解

    這篇文章主要為大家詳細(xì)介紹了C# JavaScriptSerializer序列化時(shí)的時(shí)間處理詳解,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • 在C#中處理時(shí)間戳和時(shí)區(qū)的解決方法

    在C#中處理時(shí)間戳和時(shí)區(qū)的解決方法

    處理時(shí)間戳和不同的時(shí)區(qū)可能是軟件開發(fā)中的一個(gè)棘手問題,尤其是當(dāng)系統(tǒng)不確定給定的日期時(shí)間是UTC還是本地時(shí)間時(shí),通常會(huì)遇到與時(shí)間轉(zhuǎn)換相關(guān)的問題,在這篇文章中,我將分享我們?nèi)绾卧贑#中處理時(shí)間戳和時(shí)區(qū),需要的朋友可以參考下
    2024-06-06
  • c#操作xml文件示例

    c#操作xml文件示例

    對(duì)于XML讀寫操作,項(xiàng)目中經(jīng)常要用到,之前木有好好總結(jié)過,例如LINQ TO XML也用過,這次無意發(fā)現(xiàn)XPATH對(duì)于XML的查詢極為方便,索性把XML的操作總結(jié)以便后續(xù)方便使用
    2014-03-03
  • Unity編輯器資源導(dǎo)入處理函數(shù)OnPreprocessAudio用法示例

    Unity編輯器資源導(dǎo)入處理函數(shù)OnPreprocessAudio用法示例

    這篇文章主要為大家介紹了Unity編輯器資源導(dǎo)入處理函數(shù)OnPreprocessAudio用法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • c#如何使用 XML 文檔功能

    c#如何使用 XML 文檔功能

    這篇文章主要介紹了c#如何使用 XML 文檔功能,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-10-10
  • C#中DataTable實(shí)現(xiàn)行列轉(zhuǎn)換的方法

    C#中DataTable實(shí)現(xiàn)行列轉(zhuǎn)換的方法

    這篇文章主要介紹了C#中DataTable實(shí)現(xiàn)行列轉(zhuǎn)換的方法,實(shí)例分析了C#操作DataTable的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04

最新評(píng)論

阜南县| 平顺县| 榆林市| 夏河县| 嘉祥县| 黑水县| 苍梧县| 呈贡县| 绥中县| 建德市| 揭阳市| 鄄城县| 永济市| 咸阳市| 萝北县| 贵德县| 定结县| 那坡县| 东至县| 乐至县| 罗江县| 屯留县| 和政县| 邓州市| 边坝县| 扎鲁特旗| 靖江市| 溆浦县| 大关县| 盘锦市| 东方市| 永春县| 儋州市| 开鲁县| 湘西| 潢川县| 根河市| 贵州省| 土默特右旗| 池州市| 板桥市|