惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Engineering at Meta
Engineering at Meta
博客园_首页
H
Help Net Security
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
博客园 - 三生石上(FineUI控件)
B
Blog
I
InfoQ
SecWiki News
SecWiki News
T
Tailwind CSS Blog
Spread Privacy
Spread Privacy
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
Vulnerabilities – Threatpost
N
Netflix TechBlog - Medium
P
Palo Alto Networks Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Vercel News
Vercel News
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
K
Kaspersky official blog
M
MIT News - Artificial intelligence
S
Schneier on Security
T
Threat Research - Cisco Blogs
F
Fortinet All Blogs
Cyberwarzone
Cyberwarzone
Scott Helme
Scott Helme
aimingoo的专栏
aimingoo的专栏
Martin Fowler
Martin Fowler
MyScale Blog
MyScale Blog
The Cloudflare Blog
Recent Announcements
Recent Announcements
Security Latest
Security Latest
G
GRAHAM CLULEY
IT之家
IT之家
Y
Y Combinator Blog
The Last Watchdog
The Last Watchdog
腾讯CDC
Google DeepMind News
Google DeepMind News
V
V2EX
S
Securelist
TaoSecurity Blog
TaoSecurity Blog
B
Blog RSS Feed
S
SegmentFault 最新的问题
博客园 - 叶小钗
P
Proofpoint News Feed
云风的 BLOG
云风的 BLOG
Project Zero
Project Zero
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
F
Full Disclosure

博客园 - 冰冷

经典正则表达式 (转) 常用的javascript小技巧[作者oror][转] HR 事务代码 (转) rp-provide-from-last 给SAP系统安装联机帮助(事务码SR13) (转) - 冰冷 - 博客园 如何修改 SAP 登录后的背景图片(事务码 SMW0,SM30)(转) 导出txt文件简单的例子 sapgui640免除每次登录都要输入密码(转) 关于MiPlatform310 关于oracle form开发中commit WHEN-VALIDATE-ITEM 和 KEY-NEXT-ITEM两个trigger 的先后顺序 vs2005中的treeview VS2005 写存储过程 关于给winform的DataGrid中添加复选框的问题 google中的超强搜索 关于FAT32 -> NTFS 文件系统转换 数据库连接字符串大全 [TrackBack] 转自CSDN 地址:http://blog.csdn.net/gauss32/archive/2004/10/27/154621.aspx 关于配置证书服务器,和自己颁发企业证书 自动日志组件 - Log4net应用(转贴来自http://dotnet.3yee.com/)
用.NET创建windows服务
冰冷 · 2005-05-09 · via 博客园 - 冰冷

Windows服务应用程序是一种需要长期运行的应用程序,它对于服务器环境特别适合。它没有用户界面,并且也不会产生任何可视输出。任何用户消息都会被写进Windows事件日志。计算机启动时,服务会自动开始运行。它们不要用户一定登录才运行,它们能在包括这个系统内的任何用户环境下运行。通过服务控制管理器,Windows服务是可控的,可以终止、暂停及当需要时启动。
Windows 服务,以前的NT服务,都是被作为Windows NT操作系统的一部分引进来的。它们在Windows 9x及Windows Me下没有。你需要使用NT级别的操作系统来运行Windows服务,诸如:Windows NT、Windows 2000 Professional或Windows 2000 Server。
 
使用.NET创建一个Windows服务非常方便。以下是我自己的写的一个例子。
为实现Remoting创建一个服务。
1、首先新建一个windows服务项目(起个土名叫TestService)
2、你可以看到,.NET已经为你写好了一大堆代码,你只要重写几个函数就可以实现windows服务了。
protected override void OnStart(string[] args)
  {
   // TODO: 在此处添加代码以启动服务。
   ChannelServices.RegisterChannel(chan);
   RemotingConfiguration.RegisterWellKnownServiceType(
    typeof(stime),
    "time.rem", WellKnownObjectMode.SingleCall);  
}
这个函数最重要了,一定要写哦。我在这里注册了一个管道,
chan为全局变量TcpChannel chan=new TcpChannel(5000);
3、还有就是服务停止时需要执行的命令
protected override void OnStop()
  {
   // TODO: 在此处添加代码以执行停止服务所需的关闭操作。
   ChannelServices.UnregisterChannel(chan);
   chan = null;
  }
4、然后把Service1.cs的ServiceName属性修改为MyService。这就是以后服务的名字。
5、之后转到Service1.cs的视图设计器上点右键选择添加安装程序。
6、转到ProjectInstaller视图设计器上,点serviceProcessInstaller1。修改Account属性,该属性是服务的登录为谁使用该服务,选择LocalSystem(本地系统),它的权限最高。
7、点serviceInstaller1,修改StartType属性,该属性是设置服务的执行方式是自动还是手动方式。
8、然后编译该工程。成功编译。ok服务的编写完成了。
之后就是服务的安装了。
9、在开始-〉运行-〉cmd模式下运行
InstallUtil TestService.exe
10 、安装成功后通过管理工具-〉服务就可以看到刚才自己编写的服务了,启动它。ok自己写的服务已经启动了。

后记:
可以通过InstallUtil /u TestService.exe 卸载服务。
如果你写的服务引用其他的dll,那么他们一定要在同一个目录下,否则会有错。