串口打印机缓冲区溢出
我有一台打印机(具体来说,Braillo 200 浮雕机),通过串行端口连接到运行 Windows 7 的计算机。我在 Windows 中安装了一台“通用文本”打印机,并将其设置为使用串行端口。串行端口对话框上的参数(打印机属性 -> 端口 -> 配置端口)与浮雕机上的参数相匹配。尽管如此,当尝试对大于 2K 的文件进行浮雕时,浮雕程序会报告缓冲区溢出。
我对此问题的研究表明存在握手问题,但我尝试了所有握手选项(硬件、软件、无),但都没有解决问题。
我确实注意到,通过使用 mode.exe 命令并在那里设置参数,可以从命令行进行打印(使用 copy.exe *file_name* com1)。但是,我宁愿使用 Windows 来管理打印机。
任何建议将不胜感激。
I have a printer (specifically, a Braillo 200 embosser) that is connected via a serial port to a computer running Windows 7. I installed a "generic text" printer in Windows and set it to use the serial port. The parameters on the serial port dialog (printer properties -> ports -> configure port) match those on the embosser. Despite this, the embosser reports a buffer overflow when trying to emboss files larger than 2K.
My research on this issue indicates a handshaking problem but I tried all handshaking options (hardware, software, none) and none have solved the problem.
I did notice that by using the mode.exe command and setting the parameters there, it is possible to print form the command line (using copy.exe *file_name* com1). But, I would rather use Windows to manage printers.
Any suggestions will greatly be appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 Win32 函数 SetCommTimeouts 设置写入超时可能会有所帮助。我不知道它是否有效,但这是我唯一能想到的。
It may help to set the write timeouts using the Win32 function SetCommTimeouts. I don't know if it will work but it's the only thing I can think of.