附件包含源代码与用户手册。
上位机MFC BT下载器源代码
部件介绍如下:
SSP(Self-Serialize Packet)--自定义序列化包,
是一个可以由用户自定义对象的序列化和反序列化过程的SDK开发包,
使用SSP可以将对象序列化成数据流保存到文件中,
或者将序列化后的数据流通过Socket传递给远端;
也可以使用SSP从文件或Socket中读取数据,然后反序列化成对象。
SSP和VC++的序列化、Java的序列化有着本质的区别,
比VC++和Java的序列化对象具有更好的控制性,
SSP提供了对象标准的序列化方式,
可以将对象的数据以数据流的方式传递,不管发送方是Java还是C++,
也不论接收方是C++还是Java,或是其它的语言,
数据流都可以被正确地还原成相应的对象。
(当前的SSP采用纯C++语言开发,以后将陆续地提供其它语言的SDK开发包,在适当地时候,我会提供所有的源代码)。
SSP在反序列化对象时,可以反序列化数据流成为序列化时的对象,
如果序列化时的对象注册过,则可以将数据流反序列化成序列化对象的最接近的一个基类。
SSP采用阻塞方式序列化和反序列化对象,实时地传送或接收序列化后的数据到Socket或文件中,
不需要经过缓冲区拷贝,大大地提高了序列化和反序列化的速度。
SSP采用二进制数据流方式序列化数据,允许序列化后的数据中包含字符串终结符'\0',
因此允许序列化任意的二进制数据、文件、图像缓冲区、音频缓冲区等。
SSP可以传送任意大小的数据,你甚至可以在一个对象中包含一个或多个任意大小的二进制文件,
SSP会自动地对数据进行分段传送,
并确保数据能正确地被序列化。利用SSP可以序列化任意大小文件的特性,你可以在序列化对象时读取一个文件,
通过Socket传送到远端;远端读取Socket数据,在反序列化数据流时,直接将传送的文件保存起来,
从而实现P2P或Email中传送多媒体信息的应用。
SSP可以在序列化对象时选择是否进行CRC校验、是否对数据值进行压缩处理,
可以自定义压缩处理函数,并且可以指定反序列化对象后自动执行的函数集。
SSP通过多重CRC校验,保证数据不会在传送过程中被修改,为保证数据的安全性,
每一类序列化对象都可以自定义压缩处理函数,在压缩处理函数内对数据进行压缩或加密,
如果设定了压缩处理函数,SSP会在序列化过程中调用压缩处理函数对数据进行处理,
传递压缩函数处理过后的数据;在反序列化过程中,SSP就会调用解压缩处理函数,
先将接收到的数据还原,然后将数据保存到对象的相应属性中。
SSP还允许从Socket或文件中读取数据到一个已存在的指定对象中,
从而确保只能从数据源得到指定的对象。
SSP可以处理任意多层嵌套对象的序列化和反序列化,
即一个可序列化对象可以是另一个可序列化对象的一个属性,
并且一个可序列化对象中可以包含任意多个可序列化对象。
SSP反序列化时,对象中的任何一个属性的值被反序列化完成后,
都会发出明确的通知,可以在接到该通知后执行任意的代码。
上位机VC MFC程序开发精典实例大全源码与视频讲解配套下载408例 经历1年的编程与录制点击进入查看
如果您认可,可联系功能定制! 如果您着急,充值会员可直接联系发您资料!
|