我们需要能够更改给定打印机的默认选定打印托盘.有没有人有VC++/win32代码这样做?
如果重要,我相信我们必须更改打印机的默认设置.我们的打印作业由我们以外的应用程序执行,因此我们无法在源自应用程序内部的打印操作的上下文中进行这些更改.除非有某种方法可以修改不同应用程序中的默认打印设置,否则我认为我们无法更改用户的打印机默认设置,启动打印作业,然后将默认设置恢复为原始值.
我们真的更喜欢只为当前用户更改默认值,而不需要任何特殊的UAC提升等...
我怀疑它将使用类似于此MSDN文章中显示的内容,并涉及在DEVMODE结构中设置字段(dmDefaultSource或dmFormName或两者).
任何接受者?或者有没有人有任何他们想分享的陷阱?
编辑:这是DEVMODE文档DEVMODE文档的链接
编辑:我还应该指出,我们正在寻找一个通用的解决方案 - 不是特定于特定打印机的东西(我们在很多很多环境中部署)