直接运用 Windows API 做类似 DOS 环境下纯文字打印(无内容)

netware 2001-04-12 04:40:00
...全文
165 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
eyu 2001-04-23
  • 打赏
  • 举报
回复
关注
hawk_js 2001-04-18
  • 打赏
  • 举报
回复
sohotline(TBird):
请问我用COM1代替LPT1为什么不可以???
netware 2001-04-13
  • 打赏
  • 举报
回复
我记得好象有一个API可以让你直接输出ESC命令打印的速度很快(因为是在文本格式下)。我要的就是这样的效果。
netware 2001-04-13
  • 打赏
  • 举报
回复
我记得好象有一个API可以让你直接输出ESC命令打印的速度很快(因为是在文本格式下)。我要的就是这样的效果。
sohotline 2001-04-12
  • 打赏
  • 举报
回复
Assignfile可不是Win API函数
如下:

hPrn := CreateFile('LPT1',
GENERIC_WRITE or GENERIC_READ,
0,
nil,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
0);
if hPrn = INVALID_HANDLE_VALUE then
showmessage('Print port open failed');

c:=0;

WriteFile(hPrn,
PChar(s)^,
Length(s),
c,
nil);
CloseHandle(hPrn);
这样做有一个问题:就是如果打印机没开的话,程序就停住了,停在WriteFile上了
如果在此期间把打印机连好,装好纸,程序就会自动往下走,但这样显的太傻了,需要在
写端口之前检测端口状态。
Kingron 2001-04-12
  • 打赏
  • 举报
回复
把prn作为文件,然后向它自己输出就可以。
assignfile(h,'prn');
rewrite(h);
write(h,'Test output');
closefile(h);

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧