C# 使用便携式imagemagick转换程序
如果我知道所有文件路径,如何将图像文件路径传递给convert.exe ImageMagick未安装,但仅安装在我的项目文件夹中。我不认为我应该通过cmd提示符传递图像文件路径 这是我目前的尝试。我没有收到任何错误--但是cmd提示符会很快弹出并很快消失--我已经在屏幕上打印了它,并且。。。这显然与ImageMagick有关 当我在命令提示符下不使用Unity直接运行同一个命令时(这就是我用来运行下面代码的原因),我会得到以下结果:C# 使用便携式imagemagick转换程序,c#,windows,shell,imagemagick,cmd,C#,Windows,Shell,Imagemagick,Cmd,如果我知道所有文件路径,如何将图像文件路径传递给convert.exe ImageMagick未安装,但仅安装在我的项目文件夹中。我不认为我应该通过cmd提示符传递图像文件路径 这是我目前的尝试。我没有收到任何错误--但是cmd提示符会很快弹出并很快消失--我已经在屏幕上打印了它,并且。。。这显然与ImageMagick有关 当我在命令提示符下不使用Unity直接运行同一个命令时(这就是我用来运行下面代码的原因),我会得到以下结果: Microsoft Windows XP [Version 5
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
F:\Documents and Settings\Administrator>F:\ImageMagickTest\ImageMagick\convert.e
xe F:\ImageMagickTest\PDFs\Appointment.pdf F:\ImageMagickTest\ConvertedPDFs\Appo
intment.png
Unrecoverable error: rangecheck in .setuserparams
Operand stack:
--nostringval-- --nostringval-- --nostringval--
START 0 2588256 1246519 1476808 192904 true 1139 5 <3>
END PROCS 0 2588256 1257818 1476808 194288 true 1138 5 <3>
gs_std_e.ps 0 2608352 1263873 1496904 199000 true 1138 5 <6>
gs_il1_e.ps 0 2608352 1266056 1496904 199000 true 1138 5 <9>
END FONTDIR/ENCS 0 2608352 1266234 1496904 199000 true 1138 5 <15>
END DEVS 0 2611856 1273266 1496904 199000 true 1138 5 <15>
END STATD 0 2611856 1280422 1496904 200624 true 1138 5 <39>
END GS_FONTS 0 2641800 1309596 1496904 200624 true 1139 5 <45>
END BASIC COLOR 15 2661896 1319485 1496904 200624 true 1137 5 <48>
END LEVEL 1 COLOR 15 2661896 1321213 1496904 200624 true 1137 5 <51>
END IMAGE 15 2661896 1324515 1496904 200624 true 1137 5 <54>
gs_btokn.ps 15 2661896 1327957 1496904 200624 true 996 4 <57>
gs_dps1.ps 15 2661896 1329302 1496904 200624 true 996 4 <57>
gs_dps2.ps 15 2661896 1331309 1496904 200624 true 996 4 <57>
gs_type1.ps 15 2681992 1336187 1496904 200624 true 996 4 <57>
While reading gs_lev2.ps:
%%[ Error: invalidaccess; OffendingCommand: put ]%%
START 322159 2736608 1402076 1496904 202880 true 1000 7 <92>
END PROCS 322159 2756704 1416711 1496904 204264 true 998 7 <92>
gs_std_e.ps 322159 2756704 1419438 1496904 205648 true 998 7 <95>
gs_il1_e.ps 322159 2756704 1421621 1496904 205648 true 998 7 <98>
END FONTDIR/ENCS 322159 2756704 1421799 1496904 205648 true 998 7 <104>
END DEVS 322159 2760208 1428831 1496904 205648 true 998 7 <104>
END STATD 322159 2780304 1439315 1496904 207272 true 998 7 <128>
END GS_FONTS 322159 2800400 1466811 1496904 207272 true 998 7 <134>
END BASIC COLOR 322159 2820496 1476700 1496904 207272 true 996 7 <137>
END LEVEL 1 COLOR 322159 2820496 1478428 1496904 207272 true 996 7 <140>
END IMAGE 322159 2820496 1481730 1496904 207272 true 996 7 <143>
gs_btokn.ps 322159 2820496 1485172 1496904 207272 true 996 7 <146>
gs_dps1.ps 322159 2820496 1486517 1496904 207272 true 996 7 <146>
gs_dps2.ps 322159 2820496 1488524 1496904 207272 true 996 7 <146>
gs_type1.ps 322159 2820496 1490098 1496904 207272 true 996 7 <146>
While reading gs_lev2.ps:
%%[ Error: invalidaccess; OffendingCommand: put ]%%
F:\Documents and Settings\Administrator>
当我打印ProcessStartInfo实例的参数和文件路径时,我得到
F:\ImageMagickTest\PDFs\Appointment.pdf
F:\ImageMagickTest\ConvertedPDFs\Appointment.png
对于论点,以及
F:\ImageMagickTest\ImageMagick\convert.exe
用于文件路径
出什么问题了?好的,我已经解决了部分问题——我必须安装Ghostscript。这对我不起作用,因为我不能在主机上安装任何软件…但我想现在我知道是什么问题了!谢谢
我的下一个问题基本上是,我是否可以运行ghostscript而无需在主机上安装它…看起来是同一个问题。嗯……看起来很相似,但我仍然不太明白如何做到这一点。我已经用我的新尝试更新了这个问题。如果您打印(或停止调试器并检查)在ProcessStartInfo实例中分配给参数和文件名的字符串,您会看到什么?啊!很好的信息,很好的观点。补充到原来的问题上,(请原谅我问了一个明显的问题)我认为图像和可执行文件确实存在于这些位置?假设是,如果直接从命令shell运行命令会发生什么情况?>F:\ImageMagickTest\ImageMagick\convert.exe F:\ImageMagickTest\PDFs\Appointment.pdf F:\ImageMagickTest\ConvertedPDFs\Appointment.png
F:\ImageMagickTest\ImageMagick\convert.exe