1、将Windows服务程序切换到设计视图, 右击设计视图选择“添加安装程序”
2、切换到刚被添加的ProjectInstaller的设计视图
一般设置如下:
设置serviceInstaller1组件的属性:
1) ServiceName = 服务名称
2) StartType = Automatic ,即自动
设置serviceProcessInstaller1组件的属性
1) Account = LocalSystem,账户一般设置为本地系统
3、生成解决方案
安装服务:
方法一、使用DOS命令安装window服务
1、在服务所在的文件夹下的bin\debug文件夹下找到exe文件(例如WindowsService1exe)
将此文件拷贝到你想安装的文件夹中。
2、进入DOS界面
(VS2008-->Visual Studio Tools-->Visual Studio 2008 命令提示)来进入DOS,直接用cmd可能有些命令找不到;
3、输入
方法二、使用安装项目安装windows服务
个人比较推荐这个方法,选择目录安装更灵活,而且不用在DOS环境下运行。
因为本人比较懒,直接给出别人总结的地址
注意,以后每次服务项目有更改的时候,需要编译服务后,在安装项目中刷新依赖项!!!
方法三、
在ProjectInstallercs的后台代码中添加安装服务和卸载服务的代码
/// <summary>
/// 安装服务
/// </summary>
/// <param name="stateSaver"></param>
public override void Install(SystemCollectionsIDictionary stateSaver)
{
MicrosoftWin32RegistryKey system,
//HKEY_LOCAL_MACHINE\Services\CurrentControlSet
currentControlSet,
//\Services
services,
//\<Service Name>
service,
//\Parameters - this is where you can put service-specific configuration
config;
try
{
//Let the project installer do its job
baseInstall(stateSaver);
//Open the HKEY_LOCAL_MACHINE\SYSTEM key
system = MicrosoftWin32RegistryLocalMachineOpenSubKey("System");
//Open CurrentControlSet
currentControlSet = systemOpenSubKey("CurrentControlSet");
//Go to the services key
services = currentControlSetOpenSubKey("Services");
//Open the key for your service, and allow writing
service = servicesOpenSubKey(conServiceName, true);
//Add your service's description as a REG_SZ value named "Description"
serviceSetValue("Description", "描述语言");
//(Optional) Add some custom information your service will use
config = serviceCreateSubKey("Parameters");
}
catch (Exception e)
{
ConsoleWriteLine("An exception was thrown during service installation:\n" + eToString());
}
}
/// <summary>
/// 卸载服务
/// </summary>
/// <param name="savedState"></param>
public override void Uninstall(SystemCollectionsIDictionary savedState)
{
MicrosoftWin32RegistryKey system,
currentControlSet,
services,
service;
try
{
//Drill down to the service key and open it with write permission
system = MicrosoftWin32RegistryLocalMachineOpenSubKey("System");
currentControlSet = systemOpenSubKey("CurrentControlSet");
services = currentControlSetOpenSubKey("Services");
service = servicesOpenSubKey(conServiceName, true);
//Delete any keys you created during installation (or that your service created)
serviceDeleteSubKeyTree("Parameters");
//
}
catch (Exception e)
{
ConsoleWriteLine("Exception encountered while uninstalling service:\n" + eToString());
}
finally
{
//Let the project installer do its job
baseUninstall(savedState);
}
}
代码添加完成后
添加window service安装的批处理命令
1)在项目添加一个文本文件,更名为installbat,编辑文件的内容如下:
@echo off
C:\WINDOWS\MicrosoftNET\Framework\v2050727\InstallUtilexe -i "WindowsService1exe"
@pause
2)在项目添加一个文本文件,更名为uninstallbat,编辑文件的内容如下
@echo off
C:\WINDOWS\MicrosoftNET\Framework\v2050727\InstallUtilexe -u "WindowsService1exe"
@pause
说明:上面绿色字体为服务名称
编译完成后将debug的文件拷贝到想安装的目录下,点击installbat即完成安装。可以用服务器是计算机的一种,它是网络上一种为客户端计算机提供各种服务的高性能的计算机,它在网络 *** 作系统的控制下,将与其相连的硬盘、磁带、打印机、Modem及昂贵的专用通讯设备提供给网络上的客户站点共享,也能为网络用户提供集中计算、信息发表及数据管理等服务。
从上面的介绍可以看出,服务器首先是一种计算机,只不过是能提供各种共享服务――如硬盘空间、数据库、文件、打印等――的高性能计算机。它的高性能主要体现在高速度的运算能力、长时间的可靠运行、强大的外部数据吞吐能力等方面。
目前,按照体系架构来区分,服务器主要分为两类:
ISC(精简指令集)架构服务器,使用RISC芯片并且主要采用UNIX *** 作系统的服务器,如Sun公司的SPARC、HP公司的PA-RISC、DEC的Alpha芯片、SGI公司的MIPS等。
IA架构服务器,又称CISC(复杂指令集)架构服务器,即通常所讲的PC 服务器,它是基于PC机体系结构,使用Intel或与其兼容的处理器芯片的服务器,如联想的万全系列服务器,HP公司的Netserver系列服务器等。
从当前的网络发展状况看,以"小、巧、稳"为特点的IA架构的PC服务器凭借可靠的性能、低廉的价格,得到了更为广泛的应用 ,在互联网和局域网内更多的完成文件服务、打印服务、通讯服务、WEB服务、电子邮件服务、数据库服务、应用服务等主要应用。
作为整个网络运行的基石,服务器发挥着举足轻重的作用,所以对服务器技术及其应用模式的了解,是深入了解和掌握网络技术的基础。当然可以了。
目前主流的windows 2016,2019。
linux的centos,suse等都比较适合使用。
普通电脑性能高是可以用作服务的,不只是游戏服务器。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)