在Windows上触发本机通知面板/事件?

时间:2011-07-20 16:47:25

标签: windows winapi windows-services notifications

我希望在Android上开发一个应用程序,并在Windows上运行某种服务器/服务。 Android应用程序将在UI上显示许多按钮,并使用套接字与运行Windows操作系统的笔记本电脑进行通信。我有开发Android的经验,但我没有开发Windows的经验。我还没有开始开发应用程序或服务器,因为我仍在试图找出开发服务器/服务的最佳方式。

E.g。当在Android UI上按下按钮时,我想从手机向Windows操作系统发送消息(int或字符串并不重要)。根据收到的消息,我希望Windows创建本机通知,例如电池电量不足时出现的通知等。

在Windows上运行的服务器/服务不需要GUI,我希望尽可能保持轻量级,即无需安装任何其他软件来创建通知。

关于我应该使用哪些技术/ API来实现Window的服务器/服务的任何好的意见?再一次,我没有使用Window的api开发任何经验,但是为了创建最有效的实现,id愿意学习。

感谢。

1 个答案:

答案 0 :(得分:0)

不幸的是,如果没有某种GUI,你将无法做到这一点。 Windows服务无法再与桌面交互(我相信,从Windows XP SP2开始),因此您需要某种GUI才能显示通知。

这是我用于使用C#创建Windows服务的教程的link。一旦您获得了服务,您就可以添加逻辑,通过套接字与您的Android应用程序连接。然后,您将需要创建一个可以与服务连接以接收通知的Windows应用程序。使用NotifyIcon组件简化了通知的显示。应用程序和服务之间的接口由您决定。很多时候,使用WCF,但如果你对套接字感到满意,你可以在localhost(127.0.0.1)上使用套接字。如果使用WCF,请查看Juval Lowy的Publish-Subscribe framework以获取WCF。我发现这种功能非常简单。