我有一个服务,作为几个应用程序/服务器的看门狗。 这台机器上没有用户会话。 如果出现问题,我希望看门狗能够在内部扬声器上发出嘟嘟声(这是我的排队,可以解决所有抱怨的问题)
当我在Windows上尝试Beep()API时,没有任何事情发生 – 我怀疑问题是服务会话不允许发出噪音?
我可以做这个工作吗? 任何其他的想法如何使服务提醒我?
〜CG
在\ device \ beep上调用CreateFile,然后发送IOCTL_BEEP_SET(详情请参见http://www.koders.com/c/fidFEC3527B9D951559D62722A9C0C603863106CA9B.aspx )
它可能会工作,如果你让它与桌面交互(一个选项可配置的地方,我不记得在哪里)。
但亲自,我会给它发电子邮件。
虽然也许你可以让它使用任务调度API为你自己安排一个任务,所以下次你登录就可以看到它。
我不知道; 你有几个选择。 我会避免哔哔声。
哔哔声似乎不是一个好主意 – 它可能最终导致每个人都疯狂….我也同意“与桌面交互”选项,并在服务参数中设置此参数请参阅没有模板的Windows服务
我建议创建一个简单的客户端应用程序,轮询该服务器以查询任何问题并返回一组状态消息。 然后提出适当的UI(例如托盘上的气球),发送的电子邮件等,其包含任何警告或故障消息。
这样你也知道看门狗本身正在运行,并具有网络连接 – 如果看门狗死亡和/或机器锁定,你不会知道。
它也避免了在你午餐后机器不断地发出哔哔声时被从窗户扔出去。 [+1 to @mikej] 🙂
投票时间应该是你的最低需求响应时间的一半(见奈奎斯特采样率 )。
尝试发送嘟嘟字符“\ a”到控制台。 不知道它是否会工作。