怎样用串口完成任何类型文件的传输(80分)

B

bigkey

Unregistered / Unconfirmed
GUEST, unregistred user!
我用控件SPCOMM编写,却只能传输文本文件
我想传输一个记录文件或EXE文件,怎么不行
我用的是BLOCKREAD ,BLOCKWRITE
请各位大侠不吝赐教

 
我过去用过SPCOMM控件进行文件传输,应该没有问题。你可能需要
注意一下使用BlockRead、BlockWrite之前使用的Reset(F,RecSize)
设置的RecSize大小,直接取RecSize = 1试一试。
 
我用的RECSIZE就是1,可是不行
不知道传输时用字符类型是否行呢,
因为我读是正常的,每次读255个字符,可是通讯过去写却只有几个能收到
因为传输的不是纯文本,会不会传输时有限制
我不知怎么办才好.
 
是不是控件问题,换个控件试试:http://delphi.seawind.com.cn/
上的async25.zip写异步串行通信的绝好东东,带源码
 
是不是控件问题,换个控件试试:http://delphi.seawind.com.cn/
上的async25.zip写异步串行通信的绝好东东,带源码
 
是不是控件问题,换个控件试试:http://delphi.seawind.com.cn/
上的async25.zip写异步串行通信的绝好东东,带源码6.7m重
 
BIGKEY,chenke,谁能发MAIL给我一份吗?
THANKS
 
mail to you.
 
mail to you,下次不可了噢.
 
sorry,太大了,发不出去.
 
在传输二进制文件前先把其转换成文本信息,如:打开一个二进制文件, 一个字节
一个字节的读,把它转换成00-FF,然后自己再定义一个校验和规程,便可以进行二进制
文件传输了。
 
传输二进制文件,比如一些格式化文件,记录文件,EXE,DLL等文件时,正象MICROZENG
的讨论,要变成文本格式再发,是以字节为单位.
其他方法有,如果是记录文件, 记录-文本<---------->文本-记录 ,自己转化一下
就可以了.
陋见,高手请批评指正
 
async25.zip太大了,你读它的源代码也要很久.
采用MIME编码(用DELPHI4本身的控件),不就什么问题
都解决了吗.OUTLOOK的附件就是用的MIME编码.
编码以后,把产生的文本丢到窜口里面不就行了吗,剩下
的就是单纯的窜口通信的问题了.
Good Luck!

 
请唐兄多多指点
 
多人接受答案了。
 

Similar threads

回复
0
查看
855
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
顶部