wince 通信方式_windows ce 网站通信-程序员宅基地

技术标签: wince开发问题  

wince通过gprs联网  ,通过socket或者是webservice和pc通信。web服务器端程序是其他人用java做的,发现无论是用socket还是webservice来通信服务器接收数据很慢都是同样的效果。然后我就把服务器端程序换成用C#做的窗体应用程序,并且开了个线程来不断的接收设备发来的数据。这样就能很快接收到数据了。

客户端程序:

 public class ClassTongXin
    {
       public static int ServerPort;//服务器端口

       public static string ServerIp;//服务器ip地址
     

       public static TcpClient TcpClient = null;

       public static IPAddress ServerAddress = null;

       public  string m_Error;//错误信息
       /// <summary>
       /// 检查Server的地址是否存在
       /// </summary>
       /// <returns></returns>
       public bool GetServerAddress()
       {
           if (string.IsNullOrEmpty(ServerIp))
           {
               m_Error = "服务器不存在";
               return false;

           }
           else
           {
               try
               {
                   ServerAddress = IPAddress.Parse(ServerIp);
                   return true;
               }
               catch (Exception ex)
               {
                   m_Error = "检查服务器异常:" + ex.Message;
                   return false;
               }
           }
       }
       /// <summary>
       /// 检查Server是否开启
       /// </summary>
       /// <returns></returns>
       public bool GetServerIsExist()
       {
           if (string.IsNullOrEmpty(ServerIp))
           {
               m_Error = "服务器不存在";
               return false;
           }
           else
           {
               IPHostEntry remoteHost = null;
               try
               {
                   remoteHost = Dns.GetHostEntry(ServerIp);
                   return true;
               }
               catch (SocketException socketEx)
               {
                   m_Error = "服务器未开启:" + socketEx.Message;
                   return false;
               }
           }
       }

       /// <summary>
       /// 建立连接
       /// </summary>
       /// <returns></returns>
       public bool CreateConnection()
       {
           TcpClient = new TcpClient();
           try
           {
              
               TcpClient.Connect(ServerAddress,ServerPort);
               return true;
           }
           catch (Exception odEx)
           {
               m_Error = "与服务器建立连接失败:" + odEx.Message;
               return false;
           }
       }

       /// <summary>
       /// 发送消息
       /// </summary>
       /// <param name="msg"></param>
       public bool SendMessage(string msg)
       {
           try
           {
               byte[] sendMsg = System.Text.Encoding.GetEncoding("GB2312").GetBytes(msg);

               TcpClient.Client.Send(sendMsg, SocketFlags.None);
               return true;
           }
           catch (Exception e)
           {
               m_Error = "向服务器发送消息失败" + e.Message;
               return false;
           }
       }

       /// <summary>
       /// 接收数据
       /// </summary>
       /// <param name="msg"></param>
       /// <returns></returns>
       public string RcvMessage()
       {
           string msg = "";
           try
           {
               byte[] receiveMsg = new byte[8192];

               int rflags = TcpClient.Client.Receive(receiveMsg, SocketFlags.None);

               msg = System.Text.Encoding.GetEncoding("GB2312").GetString(receiveMsg, 0, rflags);
              
               return msg;
           }
           catch (Exception e)
           {
               m_Error = "接收服务器数据失败:" + e.Message;
               return "";
           }
       }

       public  void Disconnect()
       {
           if (TcpClient != null)
           {
               TcpClient.Client.Shutdown(SocketShutdown.Both);
               TcpClient.Close();
           }
       }

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yuexuning58/article/details/8248911

智能推荐

sap abap好用的函数_abap conversion_exit_alpha_input-程序员宅基地

文章浏览阅读2k次。函数名 描述SD_VBAP_READ_WITH_VBELN 根据销售订单读取表vbap中的信息EDIT_LINES 把READ_TEXT返回的LINES中的行按照TDFORMAT=“*”重新组织VIEW_MAINTENANCE_CALL 维护表视图函数名 描述DY_GET_FOCUS 获得屏幕焦点DY_GET_SET_FIELD_VALUE 获得或者设置屏幕字段的值函数_abap conversion_exit_alpha_input

Retrofit2.0解析时使用json而不使用Gson_retrofit不添加gson-程序员宅基地

文章浏览阅读1.1k次。Retrofit2.0解析时使用json而不使用Gson在开发过程中,难免会遇到一些后台接口写的不规范的json,使用Retrofit2.0的就不好使用Gson解析了,只能用json。 然而Retrofit2.0没有提供json解析器,因此这里有两种方法来使用。 如果不规范的Json就不好使用Gson如下:{ “success”: true, “result”: {_retrofit不添加gson

Java——抽象类+模板设计模式_java 抽象模板设计模式-程序员宅基地

文章浏览阅读842次,点赞11次,收藏8次。目录1.抽象类介绍2.抽象类细节3.抽象类细节024.抽象类实例(员工问题)test01.javaEmployee.javaManager.javaCommonEmployee.java1.抽象类介绍父类方法不确定性的问题===> 考虑将该方法设计为抽象(abstract)方法//===> 所谓抽象方法就是没有实现的方法//===> 所谓没有实现就是指,没有方法体//===> 当一个类中存在抽象方法时,需要将该类声明为abstract类//===> 一般来说,_java 抽象模板设计模式

数字信号处理第四次试验:IIR数字滤波器设计及软件实现-程序员宅基地

文章浏览阅读3.9w次,点赞121次,收藏570次。数字信号处理第四次试验:IIR数字滤波器设计及软件实现前言一、实验目的二、实验原理与方法三、实验环境四、实验内容及步骤五、实验结果截图(含分析)六、思考题前言为了帮助同学们完成痛苦的实验课程设计,本作者将其作出的实验结果及代码贴至CSDN中,供同学们学习参考。如有不足或描述不完善之处,敬请各位指出,欢迎各位的斧正!一、实验目的(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波_iir数字滤波器设计及软件实现

arduino编乐谱_Arduino 蜂鸣器播放音乐简谱-程序员宅基地

文章浏览阅读1.4k次。代码:#define musicpin 5 //喇叭引脚int song[] = { //音乐音频392, 392, 440, 392, 523, 493,392, 392, 440, 392, 587, 523,392, 392, 784, 659, 523, 493, 440,698, 698, 659, 523, 587, 523};int noteDurations[] = { //音节长..._音乐简谱怎么编写arduino

C++ 输入函数 cin>>、cin.getline()和cin.get()区别_c++中cin.get和cin.getline的区别-程序员宅基地

文章浏览阅读351次。在字符串输入中,常用到cin,cin.getline()和cin.get()函数。cin>>通常只能读取一个单词。cin.getline()和cin.get()可以读取固定长度的字符串,含空格等符号。一、使用cin函数由于cin通过空格、制表符、换行符来界定字符串的。故cin在获取字符时只读取一个单词长度,对于有空格的字符串其空格后面字符读不了。例如:读取姓名#include

随便推点

h5 vue vant @click @bulr 或者 移动端touch 事件冲突 解决办法_vant swipe 点击和触摸冲突-程序员宅基地

文章浏览阅读2.2k次。场景 失焦的时候关闭 选择列表 但是同时 点击列表的时候会触发 bulr 事件 然后 click事件失效解决办法 click 换 mousedown ( tips:事件优先执行顺序 mousedown > bulr > click)如果是移动端 同理 touchstart > bulr > touch..._vant swipe 点击和触摸冲突

ChirpStack+NodeRed+Thingsboard+树莓派实现LoraWAN节点MQTT上下行数据通信,手把手呈现整个过程(三)_树莓派 thingsboard-程序员宅基地

文章浏览阅读466次,点赞5次,收藏10次。MQTT通信时候,我们要用到访问令牌,设备ID、管理凭据一般不用_树莓派 thingsboard

单路 PWM 控制的高调光比 LED 降压恒流控制器-程序员宅基地

文章浏览阅读164次。OC5401 是一款单路 PWM 控制的高调光比降压恒流驱动控制器,PWM 调光比最高可达 10000:1。OC5401 可通过外接电阻设置 LED 输出电流,最大支持 5A 以上。OC5401 支持模拟调光和 PWM 数字调光,具有良好的调光性能。OC5401 采用电流滞环控制方式,无需环路补偿。OC5401 内部集成了欠压保护、过温保护等功能。OC5401 支持 16-60V 输入电压范围。OC5401 采用 ESOP8 封装。10000:1 PWM 调光范围。250:1 模拟调光范围。

【单片机毕业设计】基于单片机的三路温湿度检测的设计_单片机 三路输入 检测-程序员宅基地

文章浏览阅读1.2k次。题目拓展:基于单片机的多路温湿度控制的设计基于单片机的恒温恒湿箱的设计基于单片机的保温保湿箱的设计项目编号:mcuclub-hj-004单片机类型:STC89C52、STM32F103C8T6具体功能:1、通过三路DHT11测量环境温湿度平均值,当温湿度不在设定的上下限值之内时,进行相应的加热制冷加湿除湿,并进行声光报警2、通过按键设置温湿度上下限值,可以手动控制加热制冷加湿除湿、切换模式3、通过显示屏显示数据。_单片机 三路输入 检测

bash: 未预期的符号 `newline' 附近有语法错误_未预期的符合newline附近有语法错误-程序员宅基地

文章浏览阅读3.5w次,点赞22次,收藏36次。问题描述:bash: 未预期的符号 `newline' 附近有语法错误解决方案:"&lt;"和"&gt;"改为单引号!参考:https://blog.csdn.net/yuan13091324/article/details/42168865_未预期的符合newline附近有语法错误

springboot少年宫活动中心后台管理系统、_少年宫信息管理系统-程序员宅基地

文章浏览阅读238次。下載地址:https://download.csdn.net/download/biyesheji250/28177516项目介绍:springboot少年宫活动中心后台管理系统、系统说明:项目引见本项目是少年儿童活动中心的选课系统,本选课系统是基于SpringBoot2.0 + Mybatis + Thymeleaf + Shiro 开发的后台管理系统,树立以Browser/Server 为构造形式、以数据库为后台中心应用、以效劳为目的信息化办公平台。完成对课程布置、报名缴费、数据记载和_少年宫信息管理系统

推荐文章

热门文章

相关标签