【发布时间】:2011-04-09 11:07:54
【问题描述】:
我有一个 asp.net 网站,我希望该网站上的页面能够在不同于 IIS 服务器的服务器上调用 Windows 计划任务或批处理文件?
有可能吗? 我该怎么做?
【问题讨论】:
标签: c# asp.net powershell scheduled-tasks
我有一个 asp.net 网站,我希望该网站上的页面能够在不同于 IIS 服务器的服务器上调用 Windows 计划任务或批处理文件?
有可能吗? 我该怎么做?
【问题讨论】:
标签: c# asp.net powershell scheduled-tasks
最简单的方法是在需要运行计划任务/批处理文件的服务器上放置一个 Web 服务(我们称之为 SERVER1)。该服务应该有一个将调用计划任务/批处理文件的方法(我们将调用此方法 Invoke)。
然后从另一台服务器 (SERVER2) 上的 asp.net 网站,我们将添加一个链接以在 SERVER1 上运行我们的方法,http://SERVER1/YourWebService.asmx/Invoke。
对我来说,这将是从外部实体(在您的情况下为 asp.net 网站)操作 SERVER1 的最简单方法。
注意:您的 Web 服务调用计划任务和运行批处理文件时可能会遇到安全问题。我相信可以做到,但您可能需要使用您的 .Net 权限设置。
【讨论】:
试试PsExec。这是 Microsoft 提供的免费工具,可让您远程执行流程。
请务必查看 Sysinternals Suite 中的所有其他工具;里面有一些非常好的东西。
【讨论】: