我正在尝试在php文件中执行批处理文件。我正在使用Apache服务器。我尝试了以下方法,但它不起作用
PHP代码
echo shell_exec('download.bat');
echo exec('download.bat');
system ("cmd /c download.bat");//Also tried for exec and shell_exec
批处理文件包含使用 ftp 客户端下载代码
批处理文件
"c:'program files'coreftp'coreftp.exe" -s -O -site mysite -d /Export/*.* -p C:'wamp'www'file'txt
如果我在cmd中运行它或直接运行它,那么当我在php中运行它时它工作正常,它只是写入或回显批处理文件的代码
下载.bat文件位于同一文件夹中。
我还尝试调用简单的蝙蝠文件
start "link" "https://www.google.co.in/?gfe_rd=cr&ei=NzuIVI-FG6aG8Qef44CAAw"
它也不会调用这个蝙蝠文件
你确定你的"download.bat"文件与你的PHP脚本在同一个PATH中吗?
尝试像这样使用绝对路径
exec('C:''MY''PATH''TO''download.bat');
如果文件位于同一目录中,只需使用exec('download.bat');
,但是您需要确保Apache具有执行批处理文件的正确权限,即它应该在管理员帐户上运行。如果您使用的是 Win7 或更高版本,请查看如何在提升模式下运行程序。