Well it sounds like you do not understand the printer's protocol, and are just hoping that sending ascii text directly will result in printing? I don't think that will work. On windows, what "printer device" are you talking about? The "device" that the Windows printer driver provides to you? You realize that is very different than direct USB access to the device right?
On Nov 7, 2007 2:29 AM, Xie, Ric <[EMAIL PROTECTED]> wrote: > Dan, > Thanks for your replay. > I think the point is in this part of code: > try{ > UsbIrp irp = usbPipe.createUsbIrp( ); > FileInputStream inStream=new > FileInputStream("/root/workspace/fwdl-java/test.txt"); > byte[] buffer =new byte[maxPacketSize]; > irp.setData(buffer); > while ((iReadnum = inStream.read(buffer)) != -1) { > usbPipe.syncSubmit(irp); > irp.setComplete(false); > } > } catch (UsbException uE) { > System.out.println("Unable to submit data buffer to > HID mouse : " + uE.getMessage()); > } > catch(Exception e) > { > } > > I have debug this code, no exception has been thrown out. And the > "syncSubmit(irp)" function has no return value. The actual length of the irp > data is correct, and there is no irp exception either. > I changed the buffer size to 1024, but the result was the same. Every time > about 77 bytes' data was printed out. The whole file is about 3k. > I do not know "submit multiple times" is right or not? However, it seems to > work, as I have printed two buffers content to one page(one buffer 64 bytes). > > I have tried to submit the whole file in one time , but the result was still > the same. > Maybe as you said, the problem is something with the protocol. On windows ,I > treat the printer device as a file and write data into it, so I have no sense > to care about the protocol. > Any other advice from you? > > Ric > Best Regards. > > -----Original Message----- > From: Dan Streetman > Sent: Wednesday, November 07, 2007 1:13 PM > To: Xie, Ric > Cc: javax-usb-devel@lists.sourceforge.net > Subject: Re: [javax-usb-devel] Write to the printer! > > You didn't mention whether you know what your printer protocol is and > know you are using it correctly, or if you are completely guessing > about the protocol. If you don't know the protocol, I can't help you, > as I think most printer protocols are rather complicated. > > However, I'll assume that you know your protocol and are using it > correctly. I suggest to use larger buffers; with bulk you are not > limited to the max packet size. Try 1k or more. Also, you may want > to use async instead of sync. Finally, are you calling submit > multiple times? You only said basically "it didn't work" but did not > elaborate at all. Are you reading the entire file? Is there an > exception? What is the return value from the submission (including > the irp exception if any, the irp transferred length, etc)? You > aren't checking any status from the submission. > ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ javax-usb-devel mailing list javax-usb-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/javax-usb-devel