自己写的服务是什么版本的对应找到版本下面的InstallUtil.exe所在的位置一般安装在
C:\Windows\Microsoft.NET\Framework\版本
1。运行--〉cmd:打开cmd命令框
2。在命令行里定位到InstallUtil.exe所在的位置
cd C:\Windows\Microsoft.NET\Framework\版本 回车
3。操作命令:
1). 安装服务命令:在命令行里输入下面的命令:
InstallUtil.exe Path/WinServiceName.exe
其中Path表示ServiceName.exe所在的位置,回车即可
比如 InstallUtil.exe F:\PL\VS2010\WeatherWarnInfoService\WeatherWarnInfoService\WeatherWarnInfoService\bin\Debug WeatherWarnInfoService.exe
或者 InstallUtil.exe 直接拖过来你服务下面的exe
安装:直接找到对应的 installutil.exe,拖cmd中,再拖你服务的位置路径下的服务名称.exe
2). 启动服务命令
net start ServiceName
ServiceName是真正的Service的名称(ServiceBase.ServiceName),跟.exe的名称可能一样,也可能不一样。如果不清楚,就到已安装的服务里面找到你的服务,右键属性里面看服务名称
3). 停止服务命令
net stop ServiceName
4). 卸载服务命令:在命令行里输入下面的命令:
InstallUtil.exe /u Path/WinServiceName.exe
其中Path表示ServiceName.exe所在的位置,回车即可
调试:
卸载:直接找到对应的 installutil.exe,拖cmd中,/u 再拖你服务的位置路径下的服务名称.exe
个人觉得这种方式也还用得下去,即调试起来感觉还不错的 !
1. 首先在你的服务源代码中添加一个定时器,定时器的示例代码如上所示。
2. 在服务的 Start 事件中启动定时器,并且将定时器设置为可用状态。
3. 在服务中添加如下代码:(我的定时器为 3 秒钟)
protected override void OnStart(string[] args)
{
System.Timers.Timer ti = new System.Timers.Timer(3000);//
ti.Elapsed += new System.Timers.ElapsedEventHandler(theout);//到达的时候执行的事件
ti.AutoReset = true; //设置是执行一次(false)还是一直执行(true);
ti.Enabled = true;
Log.LogMsg("start");
}
设置断点
启动服务
调试附件到进程,
就可以调试了
C:\Windows\Microsoft.NET\Framework\v2.0.50727
cd C:\Windows\Microsoft.NET\Framework\v2.0.50727
F:\P\VS2010\WeatherWarnInfoService\WeatherWarnInfoService
\WeatherWarnInfoService\bin\Debug
用什么版本写的服务,找到对应版本c盘下的文C:\Windows\Microsoft.NET\Frameworkv4.0.30319 回车
installutil.exe 自己写服务名称.exe所在目录复制 回车
C:\Windows\Microsoft.NET\Framework\v4.0.30319