1

我们正在尝试在 SQL 2012 和 OS 2012 上使用 TSQL,使用基于填充这些变量的查找的变量从特定目录打印 PDF 文件。我们的命令适用于 SQL 2005 和 2003 数据中心操作系统。在我们的升级过程中,这现在不想工作。我相当确定我们只是在处理与操作系统相关的语法问题,但 SQL 并没有说明问题所在。

这是基本查询-

EXEC master.sys.xp_cmdshell '"C:\Program Files (x86)\Foxit Software\Foxit Reader\Foxit Reader.exe /t" \\jde9appb\d$\JDEdwards\E910\PrintQueue\R5509108_TV0001_4970_PDF.pdf \\VMPS08\INF2808P'

以上在 OS 2003 和 SQL 2005 中运行,但是当我们在 OS 2012 和 SQL 2012 中尝试它时,它只是旋转。我们已经关闭了 UAC 并验证了执行用户对命令 shell 具有所有必要的权限,并且命令 shell 已启用。这必须通过 TSQL 脚本完成,因为这是由自定义应用程序调用的存储过程的一部分。此外,foixut 阅读器是阅读 PDF 文件的默认应用程序。您在上面看到的开关是直接打印到队列的静默模式。

帮助帮助。这是一个真正难以弄清楚的问题。

我实际上已经说通过弄乱语法来初始化打印机失败,但这就是我所知道的。我什至加载了我要使用的打印机,以确保系统正在尝试使用正确的驱动程序。

由于某种原因,双反斜杠没有正确显示。这是我需要一些帮助的固定查询。

EXEC master.sys.xp_cmdshell '"C:\Program Files (x86)\Foxit Software\Foxit Reader\Foxit Reader.exe /t" \\jde9appb\d$\JDEdwards\E910\PrintQueue\R5509108_TV0001_4970_PDF.pdf \\VMPS08\INF2808P'
4

1 回答 1

1

我们面临着完全相同的问题。我们发现它是由网络打印机引起的,虽然是为用户创建的,但对后台进程不可用。在本地创建打印机,从而绕过打印服务器解决了这个问题。

于 2015-02-17T16:44:45.050 回答