一个windows服务的开发需求如何实现

牛魔皇 2010-02-22 04:03:02
需求:
开发一个TCP/IP通信的服务器端的windows端服务(后面简称“服务”),与网络上的其他客户端进行。与该服务一起配套使用的还有一个用户界面程序,该程序可以获得正在与服务进行TCP通信的客户端的信息,显示到界面上。用户界面可以安装,卸载、启动、停止该服务,界面退出不影响服务的运行。
问题:
windwos服务程序,界面程序已经开发好了,关键难点是:界面程序如何获得服务中的信息?可以把服务设计为dll,然后调用dll的接口函数获得吗?本来界面程序可以通过TCP/IP通信机制与服务进行通信,但感觉机制上复杂了点,有没有更好的方式?
请有经验的大侠指导一下。
谢谢!
...全文
99 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
biosxjj 2010-03-29
  • 打赏
  • 举报
回复
有专门的IOCTL函数。。
或者通过监控注册表
cqsfd 2010-03-29
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 mzyqyyjpx 的回复:]

可是,界面虽然可以控制服务的安装,卸载,启动,停止,但如何获得服务的信息还是没法解决。
[/Quote]
这是2个进程,需要进程间通信
进程间通信的方法很多,但我写服务的时候还不确定服务和一般的应用程序是否可用共享内存等手段通信
我采用的是本地UDP端口通信的方法,服务作为监听方,窗体作为客户端启动时连接过去;双方采用我设计的协议进行交流,比如客户端发一个CONNECT?询问服务,是否网络连接正常,服务按实际情况返回相信信息
牛魔皇 2010-02-23
  • 打赏
  • 举报
回复
可是,界面虽然可以控制服务的安装,卸载,启动,停止,但如何获得服务的信息还是没法解决。
ljz888666555 2010-02-22
  • 打赏
  • 举报
回复
界面和服务可以分别是一个程序即可。服务程序是一个控制台程序。控制程序是一个带界面的程序。

6,873

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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