我已经创建了一个exe文件,可以在我的服务器上进行一些维护工作。 我希望能够从位于服务器上的网站启动它。 exe必须在服务器本身上启动,而不是在客户端上启动。
我的直觉告诉我这是不可能的,但我必须和你们一起检查。
如果我需要设置某些权限/安全性 - 我可以。
答案 0 :(得分:3)
是的,可以这样做,但不建议这样做。
运行维护脚本/可执行文件的理想解决方案是在Unix / Linux系统上使用cron或在Windows中使用计划任务来安排它们。自动化方法与远程手动启动的一些优点:
答案 1 :(得分:1)
一个非常粗略的选项,假设IIS:将执行访问权限从“仅脚本”或“无”更改为“脚本和可执行文件”
为了减少这种原因,您应该让可执行文件实现一个CGI接口(如果这是在您的控制之下。
并且,如果您想使用ASP.NET添加自动化/身份验证,执行此操作的代码(C#)将是:
System.Diagnostics.Process process;
var startInfo = New System.Diagnostics.ProcessStartInfo("C:\file.exe")
process.StartInfo = startInfo;
process.Start();
process.WaitForExit();
答案 2 :(得分:1)
这是可能的,但几乎可以肯定,这是一个坏主意。什么环境/网络服务器?您只需要为文件设置相关的“执行”权限。
但我确实建议您不要这样做,并将任务配置为在后台自动运行。原因是,配置不当,您最终可能会让人们运行任何可执行文件,并根据其他因素完全接管您的计算机。
答案 3 :(得分:1)
取决于您使用的语言;大多数服务器端脚本语言为您提供了一种exectue shell命令的方法,例如:
$result=`wc -l /etc/passwd`;
从perl执行了一个unix命令。
答案 4 :(得分:0)
大多数Web语言(我至少知道Java和PHP)允许您从程序中执行命令行参数。