在Server2012 R2上使用PHP运行批处理文件以编译Latex文档

在Server2012 R2上使用PHP运行批处理文件以编译Latex文档,php,batch-file,latex,Php,Batch File,Latex,我在这个问题上搜索了几个小时: 我想在运行Server2012 R2和IIS以及PHP的Web服务器上编译一个Latex文档。 我创建了一个latex.php: <?PHP error_reporting(E_ALL); try { echo system('build.bat'); } catch (Exception $e) { echo $e->getMessage(); } ?> 如果我直接在资源管理器中的服务器上启动该批处理,则

我在这个问题上搜索了几个小时:

我想在运行Server2012 R2和IIS以及PHP的Web服务器上编译一个Latex文档。 我创建了一个latex.php:

<?PHP
  error_reporting(E_ALL); 
  try {
    echo system('build.bat');
  }
  catch (Exception $e) {
    echo $e->getMessage();
  }
?>
如果我直接在资源管理器中的服务器上启动该批处理,则该批处理工作得非常完美。如果我用PHP启动ist,它什么也不做。Latex上没有日志项,windows事件查看器中没有日志项。 这就像命令没有执行一样

但是:如果我添加命令“md testfolder”,这就行了!!??!所以批处理被执行了

  • 该文件夹是所有人的完全权限,位于我的Web空间根目录中
  • 我使用的是MikTex 2.9
  • 编译.tex文件不会出错
  • texify的路径在系统路径中(也使用批处理的完整路径进行测试)

有人知道如何获取更多信息吗?这里出了什么问题?

暂停
放在批处理的末尾,看看它是否启动以及是否没有路径问题。路径中是否有
authentic.exe
?如果未将完整路径放入
authentic.exe
,即
“C:\some path\dir\authentic.exe”--pdf--synctex=1--clean“test.tex”
authentic.exe在路径中,是的。暂停不起作用,因为PHP没有打开一个窗口!在系统路径中?或批处理文件所在的路径?你能在authentic.exe之前尝试调用
吗?还是完整的作证路径?是的,它在系统路径中。我还用完整的路径测试了它。也试过打电话。没有任何更改…好的,您能将输出传输到文件以便我们可以看到结果吗<代码>“texify.exe”-pdf--synctex=1--clean“test.tex”>>output.txt
"texify.exe" --pdf --synctex=1 --clean "test.tex"