我不是开发人员。我们希望(我和我们的团队)用C ++编写一个可以打印PDF的工具(将PDF发送到打印机)。我们尝试使用外部工具,如命令行pdfprint.exe,使用CreateProcessW和cmd / c,但我们遇到了问题。使用Windows XP,我们的工具没有问题,Windows Vista存在问题,我们无法使用pdfprint.exe等工具。
在Windows XP和Vista之间使用CreateProcessW和“cmd / c”在另一个程序中启动外部工具有区别吗?
由于
Oronzo广场
答案 0 :(得分:1)
有许多方法可以从C ++程序运行外部应用程序。我会在下面算一下。
您可以尝试各自。请注意,最好将每次调用这些函数指向可执行文件的完整路径。此外,您必须对pdfprint.exe具有读/执行权限(权限)。如果没有这种方法来执行外部工具就是运行具有管理权限的C ++程序。如果右键单击程序的exe文件并选择“以管理员身份运行”菜单元素,则可以这样运行。
答案 1 :(得分:0)
As described here,您应该使用以下内容:
LPTSTR szCmdline = _tcsdup(TEXT("C:\\Program Files\\....\\pdfprint.exe -args-you-need"));
CreateProcess(NULL, szCmdline, /* ... */);