使用T_SQL xp_cmdshell过程调用GraphicsMagick命令

时间:2015-09-01 11:03:37

标签: sql tsql sql-server-2012 graphicsmagick xp-cmdshell

我一直试图通过T-SQL xp_cmdshell程序调用GraphicsMagick命令,但是我遇到错误。

我试图调用的命令如下: gm转换“\ dklyefxdb1 \ X \ Backup \ apple_raw.jpg”-scale 200x250“\ dklyefxdb1 \ X \ Backup \ apple_raw_resize.jpg”

我正在执行的SQL代码如下:

Exec sp_configure 'xp_cmdshell', 1
Reconfigure
GO

exec xp_cmdshell 'gm convert "\\dklyefxdb1\X\Backup\apple_raw.jpg" -scale 200x250 "\\dklyefxdb1\X\Backup\apple_raw_resize.jpg"'
GO

执行此代码后出现以下错误:

  

'gm'未被识别为内部或外部命令,   可操作程序或批处理文件。

请注意,GraphicsMagick安装在SQL Server所在的服务器上。

此处需要注意的另一点是,如果我通过服务器上的cmd运行相同的命令,它会成功运行。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

添加gm的完整路径:

exec xp_cmdshell 'C:\..\gm convert "\\dklyefxdb1\X\Backup\apple_raw.jpg" -scale 200x250 "\\dklyefxdb1\X\Backup\apple_raw_resize.jpg"'

SET PATH环境变量