在winfrom程序如何与windows服务进行消息传递???

xxxswl 2010-07-15 05:33:58
求助:
需要做一个 winfrom程序 可以向某一windows服务 接收和发送消息。。

最好有功能简单 实现步骤详细代码 谢谢大家。。。
...全文
372 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xxxswl 2010-07-21
  • 打赏
  • 举报
回复
IntPtr hSCManager = OpenSCManager(null, null, 0xF003F);
IntPtr hService = OpenService(hSCManager, serviceName, 0xF01FF);
QueryServiceStatus(hService, out ss);
ControlService(hService, inforNum, ref ss);
CloseServiceHandle(hService);

代码里参数的声命及返回值我就不贴了 只贴出使用顺序 自己看MSDN把 写的很详细
再次谢谢大家。。。 结帖
happyrain2010 2010-07-21
  • 打赏
  • 举报
回复
mq 挺好
xxxswl 2010-07-21
  • 打赏
  • 举报
回复
问题的答案被我找到了
实现WINFROM程序于WINDOWS服务 消息传递需要调用以下WIN API

//连接服务控制管理器
[DllImport("Advapi32.dll")]
public extern static IntPtr OpenSCManager(string lpMachineName, string lpDatabaseName, int dwDesiredAccess);
//打开服务
[DllImport("Advapi32.dll")]
public extern static IntPtr OpenService(IntPtr hSCManager, string lpServiceName, int dwDesiredAccess);
//
[DllImport("Advapi32.dll")]
public extern static bool QueryServiceStatus(IntPtr hService, out SERVICE_STATUS lpServiceStatus);
//发送消息
[DllImport("Advapi32.dll")]
public extern static bool ControlService(IntPtr hService, int dwControl, ref SERVICE_STATUS lpServiceStatus);
//关闭句饼服务
[DllImport("Advapi32.dll")]
public extern static bool CloseServiceHandle(IntPtr hService);

代码如下:
Valefish 2010-07-16
  • 打赏
  • 举报
回复
上面的都总结了..
yanniu008 2010-07-16
  • 打赏
  • 举报
回复
数据库实现简单
xxxswl 2010-07-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 vrhero 的回复:]
进程间通信、消息队列、Windows消息、TCP/IP、文件、数据库,条条大路通罗马...
[/Quote]

时间紧迫 你有关于 Windows消息 这种方式实现的代码吗?

我现在需要做的事 很单一 接收某一服务发来的消息时候再给它回复一条消息就可以 内容是个数字就行。。
angel6709 2010-07-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 vrhero 的回复:]
进程间通信、消息队列、Windows消息、TCP/IP、文件、数据库,条条大路通罗马...
[/Quote]

upup
xxxswl 2010-07-15
  • 打赏
  • 举报
回复
谢谢大家 我去试一下。。
vrhero 2010-07-15
  • 打赏
  • 举报
回复
进程间通信、消息队列、Windows消息、TCP/IP、文件、数据库,条条大路通罗马...
  • 打赏
  • 举报
回复
remoting ipc

110,536

社区成员

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

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

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