0

我正在尝试从 c# windows 窗体应用程序执行代码。

 string cmdCode = "/C mogrify -crop 590x389+116+102! D:\\Backup\\Images\\*.TIF";

 System.Diagnostics.Process.Start("CMD.exe", cmdCode);

但它没有做它应该做的事情?

当我在命令行中键入代码时,代码完美地完成了这项工作。我已经尝试改变路径。我将 tif 文件与 MyApp.exe 文件一起放置,并将 cmdCode 更改为

cmdCode = "/C mogrify -crop 590x389+116+102! *.TIF"; 

没有成功..它很快就出现了黑色的命令提示符,然后消失了。

我还尝试将代码放在一个文件中并使用扩展名 .bat 来运行它,但仍然没有成功!有什么建议么 ?

谢谢

4

2 回答 2

2

删除该cmd.exe部分,然后将路径放在那里mogrify.exe并使用“-crop ...”开始参数,删除/ C

如果您传递包含空格的路径名,则需要用引号将路径括起来,因此参数将如下所示:

"-crop \"590x389+116+102!\" \""+YourPathHere+"\"";

于 2013-08-05T13:55:55.310 回答
2

尝试用 /K 替换 /C 选项。这不会解决您的问题,但它应该防止命令提示符消失,并让您查看提示符是否显示任何错误。

由于某种原因,您传递给 CMD.exe 的 PATH 也可能与默认使用的不同。使用 /K 选项启动 cmd.exe 后,您还应该能够发出 echo %PATH% 命令,并查看您有什么。

于 2013-08-05T14:03:22.463 回答