专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VB Dotnet

老生长谈 求socket发送结构体 转换成bytes和bytes转换成结构体的高效方法 可另外开贴加分解决方法

发布时间:2011-06-23 15:55:14 文章来源:www.iduyao.cn 采编人员:星星草
老生长谈 求socket发送结构体 转换成bytes和bytes转换成结构体的高效方法 可另外开贴加分
结构体
public   structure   sendmessage
    public   fmsg   as   interger
    public   fuser   as   interger
    public   suser   as   interger
    public   fusers   as   interger
    public   sfuser   as   string
    public   dfuser   as   string
    public   ffuser   as   string
end   structure
我在网上找的方法   有问题
public   function   Struct2Bytes(byval   obj   as   object)   as   byte()
dim   size   as   integer=marshal.sizeof(obj0
dim   bytes(size)   as   byte
dim   arrptr   as   intptr=marshal.unsafeaddrofpinnedarrayelement(bytes,0)
marshal.structuretoptr(obj,arrptr,true)
Struct2Bytes=bytes
end   function

public   bytes2struct(byval   bytes()   as   byte)   as   object
dim   arrptr   as   intptr=marshal.unsafeaddrofpinnedarrayelement(bytes,0)
bytes2struct=marshal.ptrtostructure(arrptr,gettype(sendmessage))
end   function

------解决方案--------------------
帮顶
------解决方案--------------------
直接看msdn中的关于序列化的相关例子就可以了。
------解决方案--------------------
持续关注中,DING
------解决方案--------------------
try

struct 前加 <structlayout .... > 属性,详细指定结构的在非托管内存中的布局
------解决方案--------------------
我市土豆
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: