如何通过usb控制超市小票打印机Word文件下载.docx

上传人:b****2 文档编号:15355074 上传时间:2022-10-29 格式:DOCX 页数:8 大小:18.06KB
下载 相关 举报
如何通过usb控制超市小票打印机Word文件下载.docx_第1页
第1页 / 共8页
如何通过usb控制超市小票打印机Word文件下载.docx_第2页
第2页 / 共8页
如何通过usb控制超市小票打印机Word文件下载.docx_第3页
第3页 / 共8页
如何通过usb控制超市小票打印机Word文件下载.docx_第4页
第4页 / 共8页
如何通过usb控制超市小票打印机Word文件下载.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

如何通过usb控制超市小票打印机Word文件下载.docx

《如何通过usb控制超市小票打印机Word文件下载.docx》由会员分享,可在线阅读,更多相关《如何通过usb控制超市小票打印机Word文件下载.docx(8页珍藏版)》请在冰豆网上搜索。

如何通过usb控制超市小票打印机Word文件下载.docx

买个USB转并口的连接线这个方法根本不行,小票打印是想端口发送字符串。

你原来的代码是如何打开LPT1:

端口的?

给你我写的一个函数吧,可以直接往打印机写数据:

usesPrinters,WinSpool;

functionSendDataToPrinter(sDeviceName,sDocName,sData:

String):

Boolean;

//功能描述:

发送数据到打印机(PoweredbyJadeluo)

//入口参数:

//sDeviceName-打印机名称

//sDocName-打印文档名称

//sData-发送的数据

//出口参数:

//返回值-True表示成功,False表示失败

var

bResult:

hPrinter:

Cardinal;

tDocInfo:

_DOC_INFO_1A;

iWrited:

begin

=OpenPrinter(PChar(sDeviceName),hPrinter,nil);

ifbResultthen

begin

tDocInfo.pDocName:

=PChar(sDocName);

tDocInfo.pOutputFile:

=nil;

tDocInfo.pDatatype:

=StartDocPrinter(hPrinter,1,@tDocInfo)&

lt;

&

gt;

0;

=StartPagePrinter(hPrinter);

=bResultandWritePrinter(hPrinter,@sData[1],Length(sData),iWrited);

=bResultandEndPagePrinter(hPrinter);

EndDocPrinter(hPrinter);

end;

ClosePrinter(hPrinter);

Result:

=bResult;

end;

打印机名称即在Windows里安装好打印机后,显示在"

打印机和传真"

里的打印机名称。

比如,打印机名称为"

EPSONLQ-1600K"

,要发送的数据为#27#78'

1'

#0(进纸指令),则调用形式为:

SendDataToPrinter('

EPSONLQ-1600K'

'

PaperFeed'

#27#78'

#0);

//'

内容是可以任意的

路过。

Delphi(Pascal)code

usesPrinters,WinSpool;

发送数据到打印机(PoweredbyJadeluo)//入口参数:

//sDeviceName-打印机名称//sDocName-打印文档名称//sData-发送的数据//出口参数:

//返回值-True表示成功,False表示失败var

=OpenPrinter(PChar(sDeviceName),hPrinter,nil);

ifbResultthenbegin

=nil;

=StartDocPrinter(hPrinter,1,@tDocInfo)&

0;

=bResultandWritePrinter(hPrinter,@sData[1],Length(sData),iWrited);

=bResultandEndPagePrinter(hPrinter);

内容是可以任意的谢谢这位大侠,但是我按照你上面说的调试,结果打印机一点反应都没有,请指教。

用的USB端口,POS58热敏打印机。

我用LPT1端口的时候,使用的是ASSIGNFILE(F,'

LPT1'

)方法输出字符串;

谢谢这位大侠,但是我按照你上面说的调试,结果打印机一点反应都没有,请指教。

调用这个函数时一定要正确填写打印机的名称(例子中的'

'

部分)。

用过USB转COM的没用过并口

去网上找一个读取USB的代码

引用7楼linlingwei的回复:

谢谢这位大侠,但是我按照你上面说的调试,结果打印机一点反应都没有,请指教。

打印机的名字也没错,就是控制面板里显示的名字。

打印机也设置为默认打印机了。

usesprinters;

printer.BeginDoc;

printer.Canvas.TextOut(10,10,'

要打印的内容'

);

printer.EndDoc;

你可以找?

家要?

DEMO?

看看呢

思路有问题!

不需要直接操作USB,那样相当于自己写驱动,麻烦。

一般现在都是有USB转串口,USB转并口,之类的线。

而且买线的时候会带驱动程序光盘。

正确安装驱动以后显示在电脑上的就是COM口了,再操作串口就可以了。

问题是,用USB转并口之类的线,发送字符串的时候还是要发送到USB口呀,原来发送到并口的代码还是不能用呀。

用网络,控制支持的LPT1终端,打印。

使用驱动程序,添加打印机,设置端口

引用16楼ziseliuxingzh的回复:

思路有问题!

驱动后电脑上显示的就不是USB端口了,COM口或者是并口,但是操作都一样了,ASSIGNFILE(F,'

)或者ASSIGNFILE(F,'

COM1'

)。

你试试就明白了。

这个问题到现在还没解决,请求高手出现。

这个需要硬件驱动支持,有了驱动,依据它提供的DLL或者OCX来编程控制就是了。

很久没搞过这个了!

共享驱动就可以了!

安装打印机驱动,选择USB端口,然后共享,在程序中通过文件写入的方式,通过USB端口送出去安装打印机驱动,选择USB端口,然后共享,在程序中通过文件写入的方式,通过USB端口送出去

caseCombobox1.ItemIndexof

0:

assignfile(Fprt,'

1:

LPT2'

2:

3:

COM2'

4:

PrintOut.txt'

5:

\\S4\HPLaserJ\HPLaserJet2100'

格式:

\\电脑名称+\+共享名称+\打印机驱动

关键是打印机是USB接口的,如果不是并口的,可用转换头。

但要有驱动程序。

tDocInfo.pDocName

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1