wince Socket编程之一
这几天准备好好研究一下网络通讯,研究的对象主要是针对wince的tcp/ip连接.
我的PDA是华硕620BT,它的操作系统是2003的,对应的操作系统版本号是4.2.
网络通讯用的是无线wifi网卡.
书籍方面参考了
<<WINDOWS网络编程技术>>这书想买还买不到了,我只有电子版的
<<EVC高级编程及其应用开发>>这书还是不错的,evc的书很少,找来找去就那么几本,它的9,10,11章都是写的socket编程,个人感觉还是不错的,11章在讲述tcp编程,同时提供了一个封装类.
wince的网络编程和win32是不太一样的,原理相通但是缺了很多API,
据书所写wince只支持socket1.1(书是好多年前出的),根据我研究结果,
wince4.2是支持了socket2.2的,当然支持归支持,要找到相应的.h文件和lib才行
如果直接使用socket的话需要
头文件
#include <winsock2.h>
然后在Project>>Setting>>link里面的Object/Library modules 填写"ws2.lib"
具体win32的socket编程和wince有什么不同呢?
举几个例子,
1, win32里面的封装类是CSocket(同步),CAsyncSocket(异步)
wince里面的是CCeSocket,虽然CCeSocket的基类是CSocket,但是wince里面用它是不可以的,因为TheCSocket and CAsyncSocket classes rely on the standard Windows message-based notification of network events, but Windows CE does not support asynchronous event notification.
2,wince里面的setsockopt函数不支持几个设定
BSD options not supported forsetsockopt are shown in the following table.
ValueType Description SO_ACCEPTCONN BOOL The socket is listening. SO_RCVLOWAT int Receives low watermark. SO_RCVTIMEO int Receives a time-out (available in Microsoft implementation of Windows Sockets 2 Specification). SO_SNDLOWAT int Sends low watermark. SO_SNDTIMEO int Sends a time-out (available in Microsoft implementation of Windows Sockets 2 Specification). SO_TYPE
我最想设置的SO_SNDTIMEO 竟然没有啊
我的PDA是华硕620BT,它的操作系统是2003的,对应的操作系统版本号是4.2.
网络通讯用的是无线wifi网卡.
书籍方面参考了
<<WINDOWS网络编程技术>>这书想买还买不到了,我只有电子版的
<<EVC高级编程及其应用开发>>这书还是不错的,evc的书很少,找来找去就那么几本,它的9,10,11章都是写的socket编程,个人感觉还是不错的,11章在讲述tcp编程,同时提供了一个封装类.
wince的网络编程和win32是不太一样的,原理相通但是缺了很多API,
据书所写wince只支持socket1.1(书是好多年前出的),根据我研究结果,
wince4.2是支持了socket2.2的,当然支持归支持,要找到相应的.h文件和lib才行
如果直接使用socket的话需要
头文件
#include <winsock2.h>
然后在Project>>Setting>>link里面的Object/Library modules 填写"ws2.lib"
具体win32的socket编程和wince有什么不同呢?
举几个例子,
1, win32里面的封装类是CSocket(同步),CAsyncSocket(异步)
wince里面的是CCeSocket,虽然CCeSocket的基类是CSocket,但是wince里面用它是不可以的,因为The
2,wince里面的setsockopt函数不支持几个设定
BSD options not supported for
Value
我最想设置的SO_SNDTIMEO 竟然没有啊