server是纯c的代码:unsigned long dwDriveList = GetLogicalDrives();
send(hsocket,(char *)dwDriveList,sizeof(long),0);client是c和c++的混合编程:DWORD dwDriveList;
recv(pNode->hsocket,(char *)dwDriveList,sizeof(DWORD),0)双方通信是没有问题的,现在的问题是client端收到的数据不对;
是不是数据定义的格式出现了问题????
send(hsocket,(char *)dwDriveList,sizeof(long),0);client是c和c++的混合编程:DWORD dwDriveList;
recv(pNode->hsocket,(char *)dwDriveList,sizeof(DWORD),0)双方通信是没有问题的,现在的问题是client端收到的数据不对;
是不是数据定义的格式出现了问题????
解决方案 »
- 关于控件界面不刷新
- 怎样得到一个CString类型的长度?谢谢!
- CListCtrl的排序该响应哪个消息啊?郁闷了好几个星期,大家帮帮我!
- Typed Template集合类的定义问题求助
- 如何模拟PING命令并返回PING的结果?
- 制作*.avi文件高手请进来拿分
- 不大理解CWnd::OnQueryDragIcon ()?到底有什么用呀?
- 这个C程序是哪儿的问题?不能输出正确结果,如输入1,2,3....会输出:455,-25...0,0,..
- DLL 获取当前路径
- 怎样才能把OnTimer()放在其中?谢谢
- 这个问题-关于状态条
- “服务器无法通过系统非页面共享区来进行分配,因为共享区当前是空的。”这是系统日志中出现的错误,请问是什么原因造成的???
unsigned char buffer[4];
recv(pNode->hsocket,(char *)buffer,sizeof(DWORD),0);pdwDriverList = (DWORD*)buffer;
DWORD dwDriverLists = *pdwDriverList;试看看.整数编码4个字节在Windows上的字节顺序低字节在前,高字节在后。不知道你那2个系统都是windows
不。如果要简单,把整数sprintf到一个string buffer, 取出来再sscanf,也是一个办法。
buffer中recv到的值还是不对!!why ?
鸟人!
--->send(hsocket,(char *)&dwDriveList,sizeof(long),0);
send(hsocket,(char *)dwDriveList,sizeof(long),0);
你少了个"&"取dwDriveList的地址啊!改成
--->send(hsocket,(char *)&dwDriveList,sizeof(long),0);过了就结贴啊^=^