olevariant(variant)与tobject之间的互换(200分)

  • 主题发起人 主题发起人 martinwang
  • 开始时间 开始时间
M

martinwang

Unregistered / Unconfirmed
GUEST, unregistred user!
我想实现在Midas定义接口实现对象的传递,有什么好的方法吗?
 
麻烦,大家说的所谓Serial化,或者是Delphi的Stream化都不是什么好主意,需要你自己做的东西太多了,直接用ECO或者RemObjects吧。
 
其实就是串行化的问题,看过有实现类似功能的,是采用中转的办法,不是很适合.
ECO好象只有for .net.
RemObject框架太大
我有一个自己的架构,想实现分布式应用,所以用到此方法
 
想传对象这个想法本身就是错误的!

网络中传递的只应该是数据.要使用远程对象,正确的方法应该是使用远程对象的本地代理.你的问题是应该首先了解一下分布式多层中网络传输的机制.
 
楼上正确.
就算你将本地对象传给了远程的某台电脑,它如何能在其内存中找到它呢?
如果远程中也存在这个对象,可以考虑传对象的指针地址,然后再转换过来.
如:
传 @MyObject
用时 TMyObject(地址)
 
说白了自己实现 loadfromstream 和 savetostream 然后进行传递啊
 
to 楼上几位:
我就是想找到这样的一种代理,如果手动写的方式,我用过的(采用Variant Array数组方式),有没有一种公开的API,SDK等能实现这样的功能,集成了流压缩,加密等,会比自己写的能够更加成熟!!!
 
数据对象的序列化有很多方式 为什么要用二进制流?
xml或json都可以
如果你要传递的不是一个数据对象 那就说明设计有问题
delphi提供了rtti 利用rtti可以很方便的实现简单数据对象的序列化和反序列化
不需要为每个数据对象编写一套toxml之类的方法
欢迎讨论 qq 47654763 mail:kratoscao@gmail.com
 
后退
顶部