转:WinCE中socket与Win32中socket的区别
来源:互联网 发布:iphone7plusqq在线软件 编辑:程序博客网 时间:2024/06/02 13:56
1. 唯一例外的操作是必须解决Windows CE2 . 0内U D P数据报套接字中的错误:即每次调用s e n d或s e n d t o,都会导致内核内存泄漏。这个错误在Windows CE 2.1中已得到修复,但由于内核分散在R O M中,因此,目前还没有更新的软件可以修复Windows CE 2.0中的这一错误。唯一的解决办法是不要在Windows CE 2.0中使用数据报。所以要确定用的Windows CE 版本
2. 千万要记住,如果你把一个U n i c o d e字串造型成c h a r *,那么准备发送多少字节的长度参数就应该做出相应的调节!在Windows CE中,如果你打算把收到或发出的数据显示出来,必须考虑到它是不是U n i c o d e,这样才能将它显示出来。因为其他的Wi n 3 2函数的确要求U n i c o d e字串。总而言之,对执行一个简单的Wi n s o c k应用而言,Windows CE要复杂得多。
必须牢牢记住这一点:所有关系到收发数据的缓冲都属于简单的c h a r类型。也就是说,这些函数没有“U n i c o d e”版本。这一点对Windows CE来说尤为重要,因为Windows CE默认使用U n i c o d e。使用U n i c o d e时有一种选择,即把字符串当作c h a r *或把它造型
为c h a r *发送。需要注意的是,在利用字符串长度函数告诉Winsock API函数收发的数据有多少字符时,必须将这个值乘以2,因为每个字符占用字串组的两个字节。另一种选择是在将字串数据投给Wi n s o c k A P I函数之前,用Wi d e C h a r To M u l t i B y t e把U N I C O D E转换成A S C I I码。
3. 如果想在Windows CE上运行这些示例,只需要稍微修订Wi n s o c k代码即可。首先,头文
件必须是Wi n s o c k . h,而不是Winsock 2.h 。W S A S t a r t u p应该加载1 . 1版,因为它是适用于Windows CE的最新Wi n s o c k版。另外,Windows CE不支持控制台协议;因而必须用WinMain来代替main。注意,这并不意味着需要你把一个窗口合并到你的应用中;只意味着不能用printf这一类的控制台文本I / O函数。
2. 千万要记住,如果你把一个U n i c o d e字串造型成c h a r *,那么准备发送多少字节的长度参数就应该做出相应的调节!在Windows CE中,如果你打算把收到或发出的数据显示出来,必须考虑到它是不是U n i c o d e,这样才能将它显示出来。因为其他的Wi n 3 2函数的确要求U n i c o d e字串。总而言之,对执行一个简单的Wi n s o c k应用而言,Windows CE要复杂得多。
必须牢牢记住这一点:所有关系到收发数据的缓冲都属于简单的c h a r类型。也就是说,这些函数没有“U n i c o d e”版本。这一点对Windows CE来说尤为重要,因为Windows CE默认使用U n i c o d e。使用U n i c o d e时有一种选择,即把字符串当作c h a r *或把它造型
为c h a r *发送。需要注意的是,在利用字符串长度函数告诉Winsock API函数收发的数据有多少字符时,必须将这个值乘以2,因为每个字符占用字串组的两个字节。另一种选择是在将字串数据投给Wi n s o c k A P I函数之前,用Wi d e C h a r To M u l t i B y t e把U N I C O D E转换成A S C I I码。
3. 如果想在Windows CE上运行这些示例,只需要稍微修订Wi n s o c k代码即可。首先,头文
件必须是Wi n s o c k . h,而不是Winsock 2.h 。W S A S t a r t u p应该加载1 . 1版,因为它是适用于Windows CE的最新Wi n s o c k版。另外,Windows CE不支持控制台协议;因而必须用WinMain来代替main。注意,这并不意味着需要你把一个窗口合并到你的应用中;只意味着不能用printf这一类的控制台文本I / O函数。
- 转:WinCE中socket与Win32中socket的区别
- Java中ServerSocket与Socket的区别
- 【Socket编程】Tcp连接中accept生成新socket与监听socket的区别
- wince win32 c++ socket 服务端 客户端 创建与通信
- Socket PrintWriter 中 write() 与 print() 的区别
- Socket编程中,阻塞与非阻塞的区别
- socket中read与recv等函数的区别
- Socket编程中,阻塞与非阻塞的区别
- Socket编程中,阻塞与非阻塞的区别
- Socket编程中,阻塞与非阻塞的区别
- Socket编程中,阻塞与非阻塞的区别
- socket编程中,阻塞与非阻塞的区别
- Socket编程中,阻塞与非阻塞的区别
- Socket编程中,阻塞与非阻塞的区别
- java中ServerSocket 与 Socket的用法和区别
- socket编程中recv()和read()的使用与区别
- Loadrunner中socket基本函数的用法与区别
- TCP与UDP在socket中传输通信的区别
- 急功近利
- C# 编程规范
- SEARCH引擎
- Asp.net Ajax框架教程
- s3c2410 linux 与主机telnet连接缓慢 以及ping通外网中遇到的问题
- 转:WinCE中socket与Win32中socket的区别
- iPhone视频播放器demo&source code
- Windows下安装最新的Apache+PHP+MySQL指南
- 图片
- Linux Shell简介
- profile和dependency维护的相关FM
- ASP.NET底层架构
- 动态内表实例
- 《LoadRunner虚拟用户开发指南》随书视频下载地址