Php Windows 2008上的ImageMagik convert命令

Php Windows 2008上的ImageMagik convert命令,php,windows,exec,Php,Windows,Exec,我正在尝试从php脚本执行一个简单的ImageMagick convert命令,我可以通过命令提示符转换相同的文件并获得结果,但在php中,我无法以任何方式执行相同的命令,代码为: exec('convert -density 350 '.__DIR__ . DIRECTORY_SEPARATOR .'test.pdf '. __DIR__ . DIRECTORY_SEPARATOR . 'image.png'); 这个错误是由php抛出的 convert.exe:此图像格式没有解码委托 'C

我正在尝试从php脚本执行一个简单的ImageMagick convert命令,我可以通过命令提示符转换相同的文件并获得结果,但在php中,我无法以任何方式执行相同的命令,代码为:

exec('convert -density 350 '.__DIR__ . DIRECTORY_SEPARATOR .'test.pdf '. __DIR__ . DIRECTORY_SEPARATOR . 'image.png');
这个错误是由php抛出的

convert.exe:此图像格式没有解码委托 'C:\XAMPP\htdocs\test.pdf'@error/compose.C/ReadImage/532。 convert.exe:缺少图像文件名“C:\XAMPP\htdocs\image.png”@ 错误/convert.c/ConvertImageCommand/3016


在Windows 7 x64上使用相同的配置,我可以执行并获得结果,但在Windows 2008 R2上我无法执行,这可能是什么原因?

好的,所以解决方案非常简单明了,您只需确保C:\Windows\Temp和Imagick“CONVERT.EXE”文件夹的权限设置为“EVERYONE->ALL”因此,group EVERYONE有权对convert和Temp文件夹执行任何操作


希望有帮助。

相同的命令对非pdf文件有效吗?不,它对所有类型(甚至JPEG到PNG的转换)都给出相同的错误!