Skip to main content
 首页 » 编程设计

python之如何在 OpenERP 模块中使用 win32print

2025年05月04日11lyhabc

我尝试在 Windows 7 上使用带 OE 的 Bixolon 收据打印机。我成功地使用 win32print(py32win 附带)从一个小型 python 模块直接打印,代码如下:

win32print 本身不在 OE 中,因此我将 win32print.pyd 粘贴到 OE 服务器目录中,并将代码放入我的 OE 模块的向导中。 我可以看到我的向导,无错误地启动它,但随后什么也没有发生:没有打印,没有错误消息。

有什么想法吗? 谢谢

import win32print 
 
printer=OpenPrinter(win32print.GetDefaultPrinter()) 
hJob = win32print.StartDocPrinter (printer, 1, ("RVGI Print", None, "RAW")) 
g=open('test3.txt','r') 
raw_data = bytes ( open( 'test3.txt' , 'r').read ()) 
try: 
    win32print.StartPagePrinter (printer) 
    win32print.WritePrinter (printer, raw_data) 
    win32print.EndPagePrinter (printer) 
finally: 
    win32print.EndDocPrinter (printer) 
win32print.ClosePrinter (printer) 

请您参考如下方法:

请记住,python 代码在服务器上运行。您的打印机连接到服务器了吗?

此外,您的try 中没有except 部分。这使得错误悄无声息地过去了。尝试删除 try block ,以便引发错误。看看它们,您可能会发现问题所在。