• c#创建WINDOWS服务新手实验操作步骤


    最近设计一个程序.是关于检测公司内每台电脑配置的硬件信息.WINDOWS操作系统启动后就立即执行该程序,进行对当前电脑的硬件配置进行检测.然后通过网络发送到对应的IP服务器上去.并写入数据库.因此需要创建一个WINDOWS服务,就跟SQLSERVER一启动操作系统就自动运行一样.启动一次操作系统就执行一次对当前电脑硬件配置的检测.程序操作的范围比较多.先搜集并整理一下CSDN上其他人的相关文章.非常感谢.

    C#创建windows服务步骤如下.
    1. 新建一个项目,或者从选择当前解决方案--右键-添加--新建项目

    2. 选择(项目类型)Visual C#项目,(模板)Windows 服务,填写要创建的服务名称(修改默认的WindowService1成为你自己的服务名称),然后按确定按钮.

    3. 资源管理器中默认创建一个WindowsService1的项目,项目下包括一个Service1.cs文件

    4. 左侧选择"工具箱"--"组件",拖动一个Timer对象到Service1.cs [设计]这个页面窗体上.点击窗体上的Timers1足见,设置其属性:Interval属性数字N(例如200毫秒==1秒进行5次操作)

    5.双击这个Timer1组件填加自己所需要的功能函数
    private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
      {    
       //本机电脑硬件配置文件
       string strFileName=@"c:/ComputerInfo.txt";  
       string strTest="硬盘信息+显卡信息+主板信息+声卡信息+网卡信息+打印机信息";
       //判断传送文件是否存在.如果不存在则写入一行测试信息
       if (!File.Exists(strFileName))
       {  
        File.CreateText(strFileName); 
       } 
       byte[] content=Encoding.UTF8.GetBytes(strTest);
       //创建文本文件对象
       FileStream fs=new FileStream(strFileName,FileMode.OpenOrCreate,FileAccess.ReadWrite);
       //文件中写入测试数据
       fs.Write(content,0,content.Length);
       //关闭文件对象
       fs.Close(); 
       
      }
    6.添加完相应的函数代码后,从代码视图切换到设计视图,点鼠标右键选择“添加安装程序”

    7. 然后在当前项目资源管理器中会发现多了一个ProjectInstaller.cs文件,点击该文件打开ProjectInstaller.cs [设计]窗体.会发现里面自动有两个组件"serviceProcessInstaller1"和"serviceInstaller1"

    8. 设置serviceInstaller1组件的属性:ServiceName = MyService(名字自己随意修改的)和 StartType = Automatic (开机自动运行方式)

    9. 设置serviceProcessInstaller1组件的属性:Account = LocalSystem

    10. 选择当前解决方案,设置方案属性中的"启动项目"为刚才所添加的项目名称.按F5运行编译当前项目,会弹出一个对话框"无法从命令行或者调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用Server Explorer、Windows服务管理工具或NET START命令启动它"。错误没有关系,只要当前解决方案/项目文件夹/bin/Debug/文件夹下面多了一个EXE文件就好了.

    至此自己需要的服务基本操作已经完成.剩下来的就是编译.注册启动服务了.

    11.Windows服务器注册停止
    打开CMD窗口--开始--运行--输入CMD,回车
    //注册服务命令
    //cd C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322
    //InstallUtil D:/HardWareServerService.exe
    //nets tart ComputerService

    //重新注册服务
    //cd C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322
    //InstallUtil /u d:/HardWareServerService.exe
    //从您的C# 解决方案下拷贝HardWareServerService.exe文件到D盘HardWareServerService.exe
    //InstallUtil D:/HardWareServerService.exe
    //net start ComputerService

    其中D:/HardWareServerService.exe可以修改成"您当前的解决方案目录/项目名称/bin/Debug/HardWareServerService.exe"

    12.启动刚注册服务: 显示桌面-在桌面上右击“我的电脑”,选择“管理”就可以打计算机管理控制台,选择“服务和应用程序”里面的“服务”,在右侧的服务列表中找到刚注册的ComputerService服务(默认状态为停止),选择该服务右击启动所选择的ComputerService服务就完成了所有的操作,以后每次开机后就自动启动运行该服务.

    13.注册后产生的一个问题
    机器重新启动后,发现本机的sql server数据库连接不上,数据库服务器没有启动,手动启动后会提示错误“SQLServer2000发生错误1069--由于登陆失败而无法启动服务”。解决方法:开始->管理工具->服务,找到MSSQLSERVER服务,右键->属性->登录,登陆身份选择此帐户:输入用户名./Administrator,重新输入密码和确认密码,点确定按钮返回.问题解决!

    搞不清楚下面的原创是哪个了.非常感谢.我初学.补充了一下.
    http://dev.csdn.net/develop/article/63/63946.shtm
    http://blog.csdn.net/gjhjoy/archive/2007/04/19/1570425.asp

  • 相关阅读:
    180322
    20180317
    C语言编译器
    PAT甲级_PAT Advanced Level 1002. A+B for Polynomials (25) C
    java中的装箱与拆箱
    PAT甲级_PAT Advanced Level 1002. A+B for Polynomials (25)
    Java(3)_Ideal 使用指南
    4.jmeter参数化实战
    1.jmeter搭建环境
    Python_异常机制及日志
  • 原文地址:https://www.cnblogs.com/xqf222/p/3306867.html
Copyright © 2020-2023  润新知