我正在使用NodeJS模块 node-cmd 直接在Windows中通过命令行打印.pdf文件。我在之前的question中找到了执行此操作的命令。
一切似乎都正常,至少可以打印PDF。我的代码如下所示:
cmd.get('"C:\\Program Files (x86)\\Adobe\\Acrobat Reader DC\\Reader\\AcroRd32.exe" /n /s /o /h /t "' + pdfPath + '" "' + printer + '"', (err, data, stderr) => {
console.log("test");
if (!err) {
console.log(data);
res.status(200);
res.end();
} else {
console.log(err.message);
res.status(500);
res.end()
}
});
问题1:每次或多或少第二次或第三次回调函数返回参数err,并填充以下消息:
Command failed: "C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe" /n /s /o /h /t "C:\git\node\temp\2019-05-07_15-39-49_313358.pdf" "\\PRINTSRV\PR9235"
无论如何都可以打印文件,但我不太理解返回的“错误”吗?
问题2:仅当Acrobat Reader进程被杀死时,回调才会调用,为什么或如何逃避?