我试图在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中运行它只是写入或回显批处理文件的代码时,它的工作正常
download.bat文件位于同一文件夹中。
我也尝试调用简单的bat文件
start "link" "https://www.google.co.in/?gfe_rd=cr&ei=NzuIVI-FG6aG8Qef44CAAw"
它也没有调用这个bat文件
答案 0 :(得分:0)
您确定'download.bat'文件与PHP脚本位于同一个PATH中吗?
尝试使用像这样的绝对路径
exec('C:\\MY\\PATH\\TO\\download.bat');
答案 1 :(得分:0)
如果文件位于同一目录中,只需使用exec('download.bat');
,但是您需要确保Apache具有执行批处理文件的正确权限,即它应该在管理员帐户上运行。如果您使用的是Win7或更高版本,请查看如何以提升模式运行程序。