我有一个特定的专有应用程序,它是双重用途,在CGI上下文中运行“account.exe”(例如从Web服务器内部)将使account.exe输出HTML页面等。在CGI上下文之外运行“account.exe”会导致account.exe启用某些命令行功能。
现在问题: 我想在perl中的CGI上下文之外运行account.exe。尝试过系统(1,“命令”);已经尝试过系统(“启动命令”),尝试用BAT包装器清除(SET VARIABLE =)每个环境变量都有CGI要做,但仍然account.exe“检测”它由Web服务器运行并输出它的HTML。
如何在perl的CGI脚本中运行windows命令(使用草莓perl)并使“account.exe”应用程序无法检测到执行最初来自Web服务器?
答案 0 :(得分:1)
account.exe可以通过多种方式检测它的运行方式。
环境变量是一种方式;看来你已经排除了那一个。
通常,流程可以看到谁是他们的父母和他们的父母,所以这可能是其他方式。
因此,您可以进行大量测试,直到您最终愚弄该流程正在使用的特定技术,或者您可能想尝试沙盒以获得对该流程可以或不可以的更多控制权看(或做)。