怎样执行这样一个外部命令

lat35dn 2004-05-10 06:27:32
1,我已将目标内容存放在StringList中的第一行中
2,我想将这目标内容从默认打印机中打印出来,计划要用的是DOS下的 Copy /B 命令
3,不想将目标内容再存成一个文件。

哪位大哥可以指点一下。
同时奉上另外一个贴子的分
http://expert.csdn.net/Expert/topic/3014/3014427.xml?temp=.6146662

谢谢!
...全文
156 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
duhailee 2004-05-14
  • 打赏
  • 举报
回复
学习。
太空11 2004-05-13
  • 打赏
  • 举报
回复
uses Printer

Printer.BeginDoc;
Printer.Canvas.Font.Name := '宋体';
Printer.Canvas.Font.Size := 8; //FontSize;
Printer.Canvas.TextOut(Px, Py, ‘打印的字符串’);//(Px, Py)偏移量
Printer.BeginDoc;
qizhanfeng 2004-05-13
  • 打赏
  • 举报
回复
Up
lat35dn 2004-05-13
  • 打赏
  • 举报
回复

请教下面问题,
为什么下面代码执行完成后只见打印机的指示灯闪一下,不见东西打出来。

txtcom:=pchar(pkstr.Strings[0]);
txtlen:=length(pkstr.Strings[0]);
comm1.StopComm;
comm1.StartComm;
while not comm1.WriteCommData(txtcom,txtlen) do
begin
comm1.StopComm;
comm1.StartComm;
end;
comm1.StopComm;
pkstr.Free;
getit911 2004-05-12
  • 打赏
  • 举报
回复
用SPComm控件发数据
lat35dn 2004-05-12
  • 打赏
  • 举报
回复

感谢: getit911(Windows转Linux中)
的一段代码,让我解决了问题的一半。

还有一半的问题是我想将同样的内容送到COM1口
lat35dn 2004-05-11
  • 打赏
  • 举报
回复

这个确实是送到打印机了,但送去的只是字符,把格式控制符也当做字符打印出来了。


XXSingle 2004-05-11
  • 打赏
  • 举报
回复
uses Printer

Printer.BeginDoc;
Printer.Canvas.Font.Name := '宋体';
Printer.Canvas.Font.Size := 8; //FontSize;
Printer.Canvas.TextOut(Px, Py, ‘打印的字符串’);//(Px, Py)偏移量
Printer.BeginDoc;
_______________________________________

这个已经直接送到打印机打印了
lat35dn 2004-05-11
  • 打赏
  • 举报
回复
我用命令做了一段格式打印,其中包含一些条码,存成文本后copy到打印机上可以,但我想直接送到打印机打出来.
lat35dn 2004-05-11
  • 打赏
  • 举报
回复
主要有一些是打印条码的控制符,比如

^XA
^FO84,48^A0N,35^FDPART NO.^FS
^FO84,80^A0N,35^FDCUST(P)^FS
^FO240,48^A0N,100^FD12345678^FS
......

打印机会将这些东西当成字串打出来,而预期的目的是打出一个标签来

xhh_88 2004-05-11
  • 打赏
  • 举报
回复
你的格式控制符不是字体和输出的位置吗??(如果是,那你要把他们分析出来)
ckc 2004-05-10
  • 打赏
  • 举报
回复
不知道你到底想做什么
xhh_88 2004-05-10
  • 打赏
  • 举报
回复
首先:你的条件2与条件3有矛盾,要用DOS命令,则就要将目标内容存为文件。
其实要要实现打印很简单(不知道是不是你所说的送到Lpt1 或 com 口)

就像你以前的贴子里,有人说的;
uses Printer

Printer.BeginDoc;
Printer.Canvas.Font.Name := '宋体';
Printer.Canvas.Font.Size := 8; //FontSize;
Printer.Canvas.TextOut(Px, Py, ‘打印的字符串’);//(Px, Py)偏移量
Printer.BeginDoc;
_______________________________________
要执行DOS命令你可以将要执行的命令写在bat文件中
再用winexec 函数执行。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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