library prn_sml;uses
SysUtils,
Classes,
MyComm in 'MyComm.pas';//一个pascal文件,无窗体,内有TComm类
Exports
Print_M;//接口过程名
{$R *.res}
begin
//--------------------------------------------------------------
procedure Print_M(Str:String;Mark:Integer);//过程定义
var
TestComm: TComm;
S:String;
TestBytes: array[1..10] of byte;
i: integer;
begin
if(Mark=0)then
S :=#27+'8 '+Str;
if(Mark=1)then
S :=#27+'8 '+Str+#13; TestComm.WriteData(PChar(s), Length(s));
for i:=1 to 10 do TestBytes[i] := i;
TestComm.WriteData(@TestBytes, 10);
end;
//----------------------------------------------------------------
end.一个使用串口打印机的dll。我用BCB的,这个是很早以前用delphi写的一个应用中提取出来的,用builder调用同型号打印机有问题,想起来把这个delphi的东西做成dll,对delphi不精通,看了不少例子但是做出来编译报错~~~各位帮我看看哪里有问题啊!!
SysUtils,
Classes,
MyComm in 'MyComm.pas';//一个pascal文件,无窗体,内有TComm类
Exports
Print_M;//接口过程名
{$R *.res}
begin
//--------------------------------------------------------------
procedure Print_M(Str:String;Mark:Integer);//过程定义
var
TestComm: TComm;
S:String;
TestBytes: array[1..10] of byte;
i: integer;
begin
if(Mark=0)then
S :=#27+'8 '+Str;
if(Mark=1)then
S :=#27+'8 '+Str+#13; TestComm.WriteData(PChar(s), Length(s));
for i:=1 to 10 do TestBytes[i] := i;
TestComm.WriteData(@TestBytes, 10);
end;
//----------------------------------------------------------------
end.一个使用串口打印机的dll。我用BCB的,这个是很早以前用delphi写的一个应用中提取出来的,用builder调用同型号打印机有问题,想起来把这个delphi的东西做成dll,对delphi不精通,看了不少例子但是做出来编译报错~~~各位帮我看看哪里有问题啊!!
解决方案 »
- delphi怎么实现一个仿网易邮箱助手的小客户端
- 我在网上找了ASP和DELPHI版的AES加解密算法,可在密钥和强度选择都一下的情况下,还是无法互解,请高手帮忙.
- 怎样只刷新数据集(SimpleDataSet)的当前记录(delphi7)
- 如何将BYTE转换成中文?急急急!!!!1
- 如何使用户只能选择ComboBox下拉框中的内容,而不能自己输入。
- 在Internet控件页中找不到ClientSocket 和ServerSocket 控件
- 关于RB的问题,很有意思的报表
- 各位老大救我, 怎样才能让Delphi2006生成的程序在其它电脑上也能运行?
- 请问TField类的OnGetText事件在什么情况下发生?
- c/s三层midas:用paradox作数据库,若二台机子对一类帐单同时存盘,如何使服务器端的表内的帐单号依次自增1?
- faster Report 页面设置 解决立即给分,在线等待
- 誰有delphi超級猛料可以給我一份的
所以最好把过程写到MyComm.pas
library prn_sml;uses
SysUtils,
Classes,
MyComm in 'MyComm.pas';
Exports
Print_M; //这句:[Error] prn_sml.dpr(8): Undeclared identifier: 'Print_M'
{$R *.res}
begin
end.
在Mycomm.pas中
Type中的申明
procedure Print_M(Str:String;Mark:Integer);在Mycomm.pas中的定义
procedure TComm.Print_M(Str:String;Mark:Integer);
var
S:String;
TestBytes: array[1..10] of byte;
i: integer;
begin
if(Mark=0)then
S :=#27+'8 '+Str;
if(Mark=1)then
S :=#27+'8 '+Str+#13; WriteData(PChar(s), Length(s));
for i:=1 to 10 do TestBytes[i] := i;
WriteData(@TestBytes, 10);
end;真是郁闷ing~~~
而且在Print_M中,testComm需要先创建,使用后销毁。