PB6.5在XP下换打印机

PB6.5        WindowsXP

客户要求在一次业务流程里分别使用两个打印机:斑马打印机;普通激光打印机。但是PB6.5是不能通过程序直接设置打印机的,它只有一个PrintSetup ( )函数,用来打开选打印机的对话框。

从网上搜了一些东西,说的都不对,在XP下不成功。

最后通过对比注册表,找到了在注册表里设置默认打印机的地方:

【HKEY_CURRENT_USER/Software/Microsoft/Windows NT/CurrentVersion/Windows/Device】

这里保存了如下格式的字符串:

Microsoft Office Document Image Writer,winspool,Ne00:

Microsoft Office Document Image Writer:打印机名。

winspool:所有打印机都一样。

Ne00:打印机端口。

 

查看打印机端口的地方:

【HKEY_CURRENT_USER/Software/Microsoft/Windows NT/CurrentVersion/PrinterPorts】

 

在PB6.5里通过RegistrySet()函数来改变注册表的值。但是我发现一个问题,似乎更改了之后,必须停一些(例如弹个MessageBox),PB才能读出正确的打印机。最后这个地方通过加了个等待动画来解决了

你可能感兴趣的:(PB6.5在XP下换打印机)