真*高手请进,一个传输文件结构的问题,new 的 对象传不了(100分)

  • 主题发起人 主题发起人 gsgs1199
  • 开始时间 开始时间
G

gsgs1199

Unregistered / Unconfirmed
GUEST, unregistred user!
有一段代码,在一个工程中运行是可以把自己定义的结构从
SERVER传送到CLIENT的(即TSERVERSOCKET和TCLIENTSOCKET控件在一个TFORM内);
但是分成2个工程后(即即TSERVERSOCKET和TCLIENTSOCKET控件不在一个TFORM内)就不行了。
但是结构中的 int iCount 等可以传送正确 但 char * 等就不对了,问题就是这样。
程序片段如下:
typedef struct{
int iCount;
char *Buf;
} S;
S *sSendStruct=new S;
sSendStruct->iCount=777;
sSendStruct->Buf=new char [MAXSENDSIZE];

pf=new TFileStream("c://1.avi",fmOpenRead);
pf->Read(sSendStruct->Buf,MAXSENDSIZE);
SS->Socket->Connections[0]->SendBuf(sSendStruct,sizeof(S)+MAXSENDSIZE);
//(关键是上面这一句,sSendStruct中的内容是正确的, sSendStruct->iCount可以发送正确
//但是 sSendStruct->Buf就是发送不正确,为什么呢?)
delete pf;
delete sSendStruct;
有研究过的高手赐教吗?小弟先行拜谢!
 
没有人能回答,所以我twice了
 
接受答案了.
 
后退
顶部