Vczh Serialization Demo :在网络上传递复杂对象
t;Children.Add(Id); 28 } 29 return Root; 30 } 31 32 void ServerMain() 33 { 34 GetConsole()->SetTitle(L"Vczh Library++ 2.0 Communication [Server]"); 35 36 VL_Serializer Serializer; 37 InitializeSeriailzer(Serializer); 38 39 VL_SocketServer Server(vspTCP,L"8000",false); 40 if(Server.IsSuccess()) 41 { 42 VL_ServerSocket* Socket=Server.WaitForConnection(); 43 if(Socket) 44 { 45 GetConsole()->Write(L"监听到客户端。\r\n"); 46 Node::Ptr MyNode=BuildNode(); 47 WriteCommonObject(Socket->GetWriterStream(),Serializer.Serialize(MyNode.Object())); 48 delete Socket; 49 GetConsole()->Write(L"发送成功,关闭服务端。\r\n"); 50 } 51 else 52 { 53 GetConsole()->Write(L"监听端口时发生错误。\r\n"); 54 } 55 } 56 else 57 { 58 GetConsole()->Write(L"创建Socket时发生错误。\r\n"); 59 } 60 } 下面是客户端的逻辑: 1 void ClientMain() 最后用Main函数来构造一个Event。程 序将被启动两次,先启动的成为服务器,后启动的成为客户端,方便将两部分的代码都放在 同一个文件里面:
让我们看看运行结果: 下面是完 整的代码: 1 #include "..\..\..\Library\Platform\VL_Console.h" |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |