如何用C#开发Win2000下的Service ???

风中飘扬的柳絮 2003-02-08 10:04:43
我有一个程序,必须长时间,无人值守的运行,现在需要把它更改成Win2000下的Service,我应该怎么做?

哪位大虾有这方面的资料啊?
...全文
101 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
nehc 2003-02-21
  • 打赏
  • 举报
回复
我按照向导创建一个服务,但是,我不能够安装它。另我很书沮丧。

大概的提示信息是
“没有 RunInstallerAttribute 的公共安装程序。在 c:\tmp\ws.exe 程序集中可能可以找到“Yes”属性。没有安装程序,因此移除 InstallState 文件。”

请问我应该怎么做?
kinglht 2003-02-13
  • 打赏
  • 举报
回复
gz
powerpeople 2003-02-13
  • 打赏
  • 举报
回复
Windows服务在Visual Studio 以前的版本中叫NT服务,在VS.net启用了新的名称。用Visual C# 创建Windows服务不是一件困难的事,本文就将指导你一步一步创建一个Windows服务并使用它。这个服务在启动和停止时,向一个文本文件中写入一些文字信息。这个小技巧来自于MSDN,但是现在程序编写的更加清晰,并且你可以根据你的需要修改它。可下载工程文件包:mcWinService.zip。
第一步:创建服务框架
要创建一个新的 Windows 服务,可以从Visual C# 工程中选取 Windows 服务(Windows Service)选项,给工程一个新文件名,然后点击 OK。结果看起来是这样的:


你可以看到,向导向工程文件中增加WebService1.cs类:


将ServiceName(服务名)设置成你自己需要的名字,这样在测试期间就更容易识别你的服务,也可以通过编写代码来设置这个属性,方法是this.ServiceName = "mcWinService":


向导在WebService1.cs中增加的默认代码。
第二步:向服务中增加功能
在 WebService1.cs中我们可以看到,有两个被忽略的函数 OnStart和OnStop。

OnStart函数在启动服务时执行,OnStop函数在停止服务时执行。在这里,当启动和停止服务时,向一个文本文件中写入一些文字信息,代码如此。
第三步:安装和运行服务
这个应用程序最后生成一个exe文件mcWinService.exe。要注册这个服务,你需启动开始菜单中的命令行按如下方式调用installutil:installutil C:\mcWebService\bin\Debug\mcWebService.exe。要卸载服务,使用 /u 选项:installutil /u C:\mcWebService\bin\Debug\mcWebService.exe。

第四步:启动和停止服务
在桌面用右键点击图标“我的电脑”选择管理菜单项(Manage),然后启动“服务和应用程序(Services and Applications)”中的服务(Services);你也可以直接从开始菜单中选择管理工具中的计算机管理(Computer Management)进入服务。这样你就能看到服务 mcWinService,右键单击弹出菜单中有启动和停止选项。


第五步:测试服务
转到 temp 目录中,看看文本文件是否存在,有没有写入内容。
snla 2003-02-13
  • 打赏
  • 举报
回复
很简单的,换汤不换药
  • 打赏
  • 举报
回复
哪位有现成的例子,可否给我一个!!
bwx 2003-02-09
  • 打赏
  • 举报
回复
关注
saucer 2003-02-08
  • 打赏
  • 举报
回复
How to write a Windows Service in C#
http://www.codeproject.com/useritems/WindowsService.asp

Creating a Windows Service with C#
http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=300
coollzh 2003-02-08
  • 打赏
  • 举报
回复
我有个问题
用.net 写winnt service有个start函数,系统自动调用,而且要推出该函数,可我想在start函数建一个remoting的server,可以这样start函数要挂起,服务就起不来,该怎么办?
poetc 2003-02-08
  • 打赏
  • 举报
回复
gz
snewxf 2003-02-08
  • 打赏
  • 举报
回复
在加一个!!!!!!!!!
MSDN 自已搜一下!有例子。

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧