ASP.NET 4.5,c#,VS2013
我在c#中有一个windows窗体应用程序。该应用程序创建了一个pdf文件,我想将其打印到特定的打印机上。我可以做:
axAcroPDF1.printWithDialog()
并且用户从列表中选择打印机。
但我的用户一点也不喜欢这样。在这种情况下,首选打印机在列表中,他们希望这只是该程序的默认打印机。
我在axAcroPDF中看不到类似打印机的默认属性,也不知道如何仅为此windows应用程序设置默认打印机。
请提供最佳解决方案。我没想到这会变得如此复杂。谢谢,
我认为您不能为每个应用程序设置默认打印机,只能为每个用户设置。(如果不是这样的话,我洗耳恭听!(
您可以尝试以编程方式获取默认打印机,将其设置为所需的值,然后在完成PDF后将其设置回原始值。您可以使用Windows API使用SetDefaultPrinter和GetDefaultPrinter来完成此操作。
您需要知道如何从C#进行Windows API调用。如果你不确定从哪里开始,可以看看pinvoke。