我可以通过ajax关闭监视器并获得响应吗?

本文关键字:响应 监视器 可以通过 ajax | 更新日期: 2023-09-27 18:05:03

我正在开发一个web应用程序,该应用程序将在kiosk上运行,并通过触摸屏界面使用。我们想要从管理页面关闭屏幕,所以使用Windows电源管理不是一个选项,因为关闭显示器必须明确地完成。

按照这个问题中发布的建议,我能够对我的控制器进行AJAX调用并关闭监视器。但是,我的AJAX请求从未收到响应,因为SendMessage()之后的任何代码都没有执行,我不确定原因。这超出了我使用c#的能力,所以它可能是一些我不理解的简单的东西。Firebug显示请求挂起。我尝试逐步执行,但是一旦调用了SendMessage(),就不会发生其他任何事情。我还尝试打开监视器(当它打开时),看看我是否可以跳过,但结果是一样的:在SendMessage()之后,没有执行任何其他操作。

所以它是可能的,通过AJAX和接收响应?

我可以通过ajax关闭监视器并获得响应吗?

我假设您遵循了使用SendMessage(...)方法的代码。如果您阅读了该问题链接到的文章的底部(http://www.codeproject.com/KB/cs/Monitor_management_guide.aspx),它讨论了几个类似方法之间的行为差异:

SendMessage() -将指定的消息发送到一个或多个窗口,调用指定窗口的窗口过程,直到窗口过程处理完消息才返回。PostMessage() -在与创建指定窗口的线程关联的消息队列中发送消息,并且不等待线程处理该消息而返回。

我想如果你给PostMessage(...)传递同样的参数,你可能会得到你想要的行为