exe制作成window服务器的简单介绍
- 服务器
- 2022-12-20 10:42:34
- 30
今天给各位分享exe制作成window服务器的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
2种方法教你,如何将exe注册为windows服务,直接从后台运行
[TOC]
首先我们要打开cmd,下面的命令在cmd中运行,最好使用管理员运行cmd
binpath :你的应用程序所在的路径。
displayname :服务显示的名称
在cmd中输入 services.msc 打开系统服务,查看是否出现 ceshi 名称的服务(即 displayname= 后面的参数,我这里是 ceshi )
or
按下面的方式尝试启动服务
使用方法一,如果你的exe不符合服务的规范,启动有可能会失败
这种情况下,我们使用instsrv+srvany
链接:
提取码:s1vm
注意: Myservice 是自定义的服务的名称,可以根据应用程序名称任意更改
运行成功!
之后启动服务 Myservice 即可后台运行exe!
注意: Myservice 是自定义的服务的名称,可以根据应用程序名称任意更改
运行成功!
我这里是64位系统
之后启动服务 Myservice 即可后台运行exe!
如何把EXE文件做成windows服务
修改注册表
在“开始→运行”中键入“regedit.exe”,打开“注册表编辑器”,展开分支“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services”,在右侧窗格中显示的就是本机安装的服务项。
如果要新建服务,只须点击“编辑→新建→项”,然后为此项命名,如“test”;然后右击该项,选择“新建→字符串值”或“新建→DWORD值”即可。添加一个服务项目具体需要添加的键值如下:
“DisplayName”,字符串值,对应服务名称;
“Description”,字符串值,对应服务描述;
“ImagePath”,字符串值,对应该服务程序所在的路径;
“ObjectName”,字符串值,值为“LocalSystem”,表示本地登录;
“ErrorControl”,DWORD值,值为“1”;
“Start”,DWORD值,值为2表示自动运行,值为3表示手动运行,值为4表示禁止;
“Type”,DWORD值,应用程序对应10,其它对应20。
另外,还要在“test”项下新建一个“Enum”项。按照以上步骤添加QQ程序为服务,重新启动计算机后,打开“服务”窗口,就可以看到刚才添加的QQ服务。
如果要删除某项服务,只要删除注册表的中相关键值即可,本例中要删除QQ服务,直接删除“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\test”分支即可
如何将exe文件包装为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,重新输入密码和确认密码,点确定按钮返回.问题解决!
关于exe制作成window服务器和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
本文由admin于2022-12-20发表在靑年PHP官网,如有疑问,请联系我们。
本文链接:http://qnphp.com/post/192775.html