iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >C#中怎么创建一个Service模板
  • 553
分享到

C#中怎么创建一个Service模板

2023-06-17 23:06:27 553人浏览 独家记忆
摘要

C#中怎么创建一个Service模板,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。打开VS 2005,点击File->New->Project…,在C#创建工程

C#中怎么创建一个Service模板,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

打开VS 2005,点击File->New->Project…,在C#创建工程向导中选择windows Service模板。

在工程名输入框中,输入TestService然后点击OK.VS为我们生成了最基本的代码,我们将Service的名称改为我们期望的名称,在 solution explorer中右键点击vs自动生成的Service文件“Service1.cs”,在弹出的菜单中选择Rename,输入 “MyFirstService”,然后切换到设计视图,也就是在solution explorer中双击MyfirstService.cs,在Property Explorer中将ServiceName属性改为MyFirstService,这时一个可运行的windows Service已经C#创建成功。我们添加一些代码来测试一下这个Service,最简单的测试方式就是向windows event log里来添加一些消息以显示我们的Service的状态。

我们需要一个EventLog组件向windows log中添加信息,在solution explorer中双击MyfirstSerivce文件切换到设计视图,将工具箱中的EventLog组件拖到设计视图中,我们保留EventLog组件的默认名称eventLog1.选中eventLog1,在property explorer中将Log属性选为Application,在Source属性中输入“MyFirstService”。接下来,我们在设计视图的空白处,右键点击,并选择View Code切换到代码视图,在OnStart和OnStop方法里输入代码实现日志写入,代码如下:

要运行这个Service我们还要做下边的几个步骤:

为我们的Service添加Installer,右键点击设计视图,选择Add Installer,VS将会为我们添加ProjectInstaller.cs,并在ProjectInstaller中添加组件 ServiceInstaller1和ServiceProcessInstaller1,现在我们来修改他们的属性来控制Service的安装和启动选项。在ProjectInstaller得设计视图中选中ServiceProcessInstaller1,将它得Account属性选为 LocalSystem,这样以这个帐号服务启动。如果你希望系统启动时自动启动服务得话,将ServiceInstaller1的StartType的属性选为Automatic,如果手动启动的话,选为manaul.

安装Service,我们要用到IntallUtil.exe这个程序,这个程序位于C:\WINDOWS\Microsoft.net \Framework\v2.0.50727.点击开始菜单,选择“运行”,在运行对话框中输入cmd,进入到命令行窗口,输入cd :\WINDOWS\Microsoft.NET\Framework\v2.0.50727,进入到这个目录,然后输入installutil F:\Programs\C#\TestService\TestService\bin\Debug\testserveice.exe, installutil后边的内容就是我们的工程生成的可执行程序的路径,情根据需要修改。

如果你给ServiceInstaller1的StartType设为Automatic的话,安装完服务,服务已经运行起来了,如果 StartType是Manual的话,你需要手动启动。现在我们进入“服务”,要打开“服务”,请单击“开始”,指向“设置”,然后单击“控制面板”。依次单击“性能和维护”、“管理工具”,然后双击“服务”。在里边你应该能够看到我们制作的Service MyFirstService.在这里边,我们可以启动,关闭服务,还可以设置服务的启动类型。然后,我们看看服务有没有正确的写入日志,我们需要进入到事件查看器,要打开“事件查看器”,请单击“开始”,指向“设置”,然后单击“控制面板”。单击“性能和维护”,单击“管理工具”,然后双击“事件查看器 ”。

如果你不需要这个Service了,仍然使用InstallUtil这个程序来卸载,不过在InstallUtil后跟参数 –u,比如installutil –u F:\Programs\C#\TestService\TestService\bin\Debug\testserveice.exe.

Service的调试方法与普通的程序调试方法是不一样的。我来介绍一下。

Build你的项目

设置断点,因为我们的Service非常的简单,没有什么执行逻辑,所以设置断点没有任何意义,大家可以自己写一些代码来实践。一般来说,我们服务里需要用到一个另外的线程来执行任务,你需要在线程的执行代码中来设置断点。

安装Service,我们前边有介绍如何安装。

如果你的Service启动类型是手动(Manual),你需要到“服务”里启动你的Service.一般来说,如果你的Service在开发阶段,我推荐你将Service的启动类型设置为Manual,这样便于调试,因为如果Service在运行过程中,你将无法build工程。

在VS中,从菜单中选择Debug->Attach Process…。

如果你找不到自己的Service,请选中Show processes from all users.在Available processes列表中选中我们的Service所在的进程TestService,然后点击Attach按钮,如果你设置的断点合理的话,那么,程序就会停在断点处,接下来你就可以进行调试了。

usingSystem;  usingSystem.Collections.Generic;  usingSystem.ComponentModel;  usingSystem.Data;  usingSystem.Diagnostics;  usingSystem.ServiceProcess;  usingSystem.Text;   namespaceTestService  {  publicpartialclaSSMyFirstService:ServiceBase  {  publicMyFirstService()  {  InitializeComponent();  }   protectedoverridevoidOnStart(string[]args)  {  //TODO:Addcodeheretostartyourservice.  eventLog1.WriteEntry("Servicestart");  }   protectedoverridevoidOnStop()  {  //TODO:AddcodeheretoperfORManytear-downnecessaryto  stopyourservice.  eventLog1.WriteEntry("Servicestop");  }  }  }

关于C#中怎么创建一个Service模板问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网精选频道了解更多相关知识。

--结束END--

本文标题: C#中怎么创建一个Service模板

本文链接: https://www.lsjlt.com/news/294690.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C#中怎么创建一个Service模板
    C#中怎么创建一个Service模板,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。打开VS 2005,点击File->New->Project…,在C#创建工程...
    99+
    2023-06-17
  • C#中怎么创建一个Web Service服务
    本篇文章为大家展示了C#中怎么创建一个Web Service服务,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。为什么需要Web Service以前,分布式的应用程序逻辑需要使用分布式的对象模型,通过...
    99+
    2023-06-18
  • C#怎么创建VS2003模板
    这篇文章主要介绍了C#怎么创建VS2003模板的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#怎么创建VS2003模板文章都会有所收获,下面我们一起来看看吧。一、创建类库的类文件模板新建一个C#的类库项目My...
    99+
    2023-06-17
  • 怎么在Kubernetes里创建一个Nginx service
    本篇内容主要讲解“怎么在Kubernetes里创建一个Nginx service”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么在Kubernetes里创建一个Nginx service”吧!...
    99+
    2023-06-06
  • C#中怎么创建一个表单
    这期内容当中小编将会给大家带来有关C#中怎么创建一个表单,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。C#创建表单这非常简单,只需要创建一个从 System.WinForms.Form 类中衍生出来的类,...
    99+
    2023-06-17
  • C#中怎么创建一个Access表
    本篇文章给大家分享的是有关C#中怎么创建一个Access表,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。C#操作Access主要知识点如下:using System....
    99+
    2023-06-18
  • 如何创建一个自己的bootstrap模板
    本篇内容介绍了“如何创建一个自己的bootstrap模板”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码...
    99+
    2024-04-02
  • c++怎么创建一个类
    在C++中,可以通过以下步骤来创建一个类:1. 声明类:在头文件(.h或.hpp)中声明类的名称和成员函数。例如:```cppcla...
    99+
    2023-08-16
    c++
  • C#中怎么创建一个文件夹
    本篇文章为大家展示了C#中怎么创建一个文件夹,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。C#创建文件夹在不同虚拟目录下的实现方法是用Server.MapPath("相对路径")...
    99+
    2023-06-17
  • C#中怎么创建一个DataSet对象
    C#中怎么创建一个DataSet对象,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。 启动 Microsoft Visual Studio .NET。在文件菜单上,单击新建,...
    99+
    2023-06-17
  • C#中怎么创建一个Word文档
    C#中怎么创建一个Word文档,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。C#创建Word文档实例:using MSExcel = Micros...
    99+
    2023-06-17
  • C#中怎么创建一个Excel文件
    这篇文章给大家介绍C#中怎么创建一个Excel文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。C#创建Excel文件实现实例://创建一个excel application  Excel...
    99+
    2023-06-17
  • C#中怎么创建一个XML文档
    本篇文章为大家展示了C#中怎么创建一个XML文档,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。创建一个XML文档:这一点和***种方法一样,在这里就不介绍了。通过"XmlDocument&...
    99+
    2023-06-17
  • C#中怎么动态创建一个数组
    这期内容当中小编将会给大家带来有关C#中怎么动态创建一个数组,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。C#动态创建数组实例:ArrayList al = new ...
    99+
    2023-06-17
  • 全C#中怎么创建一个XML文件
    今天就跟大家聊聊有关全C#中怎么创建一个XML文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。C#创建XML文件的相关概念:这篇文章假定读者具备一定的XML基础,如果你刚接触XML...
    99+
    2023-06-17
  • C# 中怎么创建一个复合控件
    本篇文章为大家展示了C# 中怎么创建一个复合控件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。构建提供丰富的客户端接口的复杂Web控件经常需要把一些客户端JavaScript代码与控件的服务器端代码...
    99+
    2023-06-17
  • C#中怎么创建一个类库工程
    这篇文章将为大家详细讲解有关C#中怎么创建一个类库工程,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C#语言有很多值得学习的地方,这里我们主要介绍C#类库工程,包括介绍使用对象浏览器浏览两个...
    99+
    2023-06-17
  • kibana怎么创建索引模板
    要在Kibana中创建索引模板,您可以按照以下步骤操作:1. 打开Kibana控制台并登录到您的Kibana实例。2. 在左侧导航栏...
    99+
    2023-09-18
    kibana
  • C++中怎么手动创建一个内存池
    今天就跟大家聊聊有关C++中怎么手动创建一个内存池,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。引言使用new expression为类的多个实例分配动态内存时,cookie导致内存...
    99+
    2023-06-20
  • C#中怎么创建一个Web应用程序
    这期内容当中小编将会给大家带来有关C#中怎么创建一个Web应用程序,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。C#创建Web应用程序项目在本节中,创建表示应用程序的用户界面的 Visual C# 或 V...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作