﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-天书的博客</title><link>http://www.cppblog.com/skybook/</link><description /><language>zh-cn</language><lastBuildDate>Tue, 09 Feb 2010 14:23:59 GMT</lastBuildDate><pubDate>Tue, 09 Feb 2010 14:23:59 GMT</pubDate><ttl>60</ttl><item><title>MQ接收消息类</title><link>http://www.cppblog.com/skybook/archive/2010/02/08/107470.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Mon, 08 Feb 2010 01:04:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2010/02/08/107470.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/107470.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2010/02/08/107470.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/107470.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/107470.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp; private void MQRecieve()&nbsp;&nbsp; //MQ接收函数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs...&nbsp;&nbsp;<a href='http://www.cppblog.com/skybook/archive/2010/02/08/107470.html'>阅读全文</a><img src ="http://www.cppblog.com/skybook/aggbug/107470.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2010-02-08 09:04 <a href="http://www.cppblog.com/skybook/archive/2010/02/08/107470.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>判断字符串中含有中文</title><link>http://www.cppblog.com/skybook/archive/2010/01/12/105466.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Tue, 12 Jan 2010 01:29:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2010/01/12/105466.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/105466.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2010/01/12/105466.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/105466.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/105466.html</trackback:ping><description><![CDATA[<p>using System.Text.RegularExpressions;<br><br></p>
<div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">bool</span><span style="COLOR: #000000">&nbsp;isContainCh(</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;s)<br><img id=Codehighlighter1_44_420_Open_Image onclick="this.style.display='none'; Codehighlighter1_44_420_Open_Text.style.display='none'; Codehighlighter1_44_420_Closed_Image.style.display='inline'; Codehighlighter1_44_420_Closed_Text.style.display='inline';" align=top src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_44_420_Closed_Image onclick="this.style.display='none'; Codehighlighter1_44_420_Closed_Text.style.display='none'; Codehighlighter1_44_420_Open_Image.style.display='inline'; Codehighlighter1_44_420_Open_Text.style.display='inline';" align=top src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_44_420_Closed_Text><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_44_420_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Regex&nbsp;r4&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;Regex(</span><span style="COLOR: #000000">@"</span><span style="COLOR: #000000">^[\u4e00-\u9fa5]+$</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;len&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;s.Length;<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;i&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;&nbsp;i&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;len&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;&nbsp;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_195_384_Open_Image onclick="this.style.display='none'; Codehighlighter1_195_384_Open_Text.style.display='none'; Codehighlighter1_195_384_Closed_Image.style.display='inline'; Codehighlighter1_195_384_Closed_Text.style.display='inline';" align=top src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_195_384_Closed_Image onclick="this.style.display='none'; Codehighlighter1_195_384_Closed_Text.style.display='none'; Codehighlighter1_195_384_Open_Image.style.display='inline'; Codehighlighter1_195_384_Open_Text.style.display='inline';" align=top src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_195_384_Closed_Text><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_195_384_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;str&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;s.Substring(i,&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">);<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(r4.IsMatch(str))<br><img id=Codehighlighter1_298_370_Open_Image onclick="this.style.display='none'; Codehighlighter1_298_370_Open_Text.style.display='none'; Codehighlighter1_298_370_Closed_Image.style.display='inline'; Codehighlighter1_298_370_Closed_Text.style.display='inline';" align=top src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_298_370_Closed_Image onclick="this.style.display='none'; Codehighlighter1_298_370_Closed_Text.style.display='none'; Codehighlighter1_298_370_Open_Image.style.display='inline'; Codehighlighter1_298_370_Open_Text.style.display='inline';" align=top src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_298_370_Closed_Text><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_298_370_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">;<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">;<br><img align=top src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
<img src ="http://www.cppblog.com/skybook/aggbug/105466.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2010-01-12 09:29 <a href="http://www.cppblog.com/skybook/archive/2010/01/12/105466.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>socket 收发同步问题 解决方法</title><link>http://www.cppblog.com/skybook/archive/2010/01/07/105073.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Thu, 07 Jan 2010 03:34:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2010/01/07/105073.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/105073.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2010/01/07/105073.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/105073.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/105073.html</trackback:ping><description><![CDATA[首先：服务端要发四个字节过来，代表接下来他发了多少数据过来，然后每次客户端就读这个长度的数据即可。这样收发就同步了哈哈！<br>然后：客户端就按照这个长度来读服务端一次发过来的信息。<br><br><br>还要解决一个问题就是 socket接收信息由字节转换成整型：<br>&nbsp;Byte[] RecNum = new byte[4];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int iRevNum = netstream.Read(RecNum, 0, RecNum.Length);//读取客户发送来的字节信息。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i = BitConverter.ToInt32(RecNum, 0);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; i = System.Net.IPAddress.NetworkToHostOrder(i);<br><br><br>接下来就按i这么大来读信息就能同步了。具体代码见下：（网元监控中使用）<br><br><span style="COLOR: #ff00ff">private void Read()<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Byte[] Recp = new byte[1024];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ClientSocket == null)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NetworkStream netstream = new NetworkStream(ClientSocket);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int iRevp = netstream.Read(Recp, 0, Recp.Length);//读取客户发送来的信息。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; string strRevp = System.Text.Encoding.GetEncoding("gb2312").GetString(Recp, 0, iRevp);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (strRevp.IndexOf("请输入指令") != -1)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; string sendMsg = "";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (curPort.Equals("ALL"))<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sendMsg = "track " + curNet.NeENName + "\r\n";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sendMsg = "track " + curNet.NeENName + "#" + curPort + "\r\n";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DispatchMessage(sendMsg);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="COLOR: #ff6600">&nbsp; while (true)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="BACKGROUND-COLOR: #ccffcc">Byte[] RecNum = new byte[4];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int iRevNum = netstream.Read(RecNum, 0, RecNum.Length);//读取客户发送来的字节信息。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i = BitConverter.ToInt32(RecNum, 0);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; i = System.Net.IPAddress.NetworkToHostOrder(i);</span><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="BACKGROUND-COLOR: #800080">Byte[] Rec = new byte[i];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int iRev = netstream.Read(Rec, 0, Rec.Length);//读取客户发送来的信息。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; string strRev = System.Text.Encoding.GetEncoding("gb2312").GetString(Rec, 0, iRev);</span><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strRev = strRev.Replace("\0", "");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ProcessReceiveData(strRev);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; catch (Exception ex)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Thread.Sleep(1000);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; catch (Exception ex)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span>
<img src ="http://www.cppblog.com/skybook/aggbug/105073.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2010-01-07 11:34 <a href="http://www.cppblog.com/skybook/archive/2010/01/07/105073.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>timer控件跨线程问题</title><link>http://www.cppblog.com/skybook/archive/2010/01/07/105060.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Thu, 07 Jan 2010 02:04:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2010/01/07/105060.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/105060.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2010/01/07/105060.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/105060.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/105060.html</trackback:ping><description><![CDATA[<p style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt" class=p0><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'">跨线程时&nbsp;一定要用<font face="Times New Roman">System.Timer</font><font face=宋体>，而不要用</font><font face="Times New Roman">System.windows.Forms.Timer.</font></span><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'"><o:p></o:p></span></p>
<p style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt" class=p0><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'">Timer&nbsp;<font face=宋体>控件到点时，一定要先</font><font face="Times New Roman">stop</font><font face=宋体>然后做其他工作，最后再</font><font face="Times New Roman">messageBox.show()&nbsp;;</font><font face=宋体>否则</font><font face="Times New Roman">messageBox.show()&nbsp;</font><font face=宋体>将线程阻塞在那块等待用户操作了，要是用户不在没有操作，则不能</font><font face="Times New Roman">stop()</font><font face=宋体>。</font></span></p>
<!--endfragment-->
<img src ="http://www.cppblog.com/skybook/aggbug/105060.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2010-01-07 10:04 <a href="http://www.cppblog.com/skybook/archive/2010/01/07/105060.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>socket数据接收不全</title><link>http://www.cppblog.com/skybook/archive/2010/01/07/105059.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Thu, 07 Jan 2010 02:03:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2010/01/07/105059.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/105059.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2010/01/07/105059.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/105059.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/105059.html</trackback:ping><description><![CDATA[<p style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt" class=p0><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'">1<font face=宋体>：网线或者网络的事，比如</font><font face="Times New Roman">IP</font><font face=宋体>被占用，网线不好用。</font></span><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'"><o:p></o:p></span></p>
<p style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt" class=p0><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'">查找方法：&nbsp;<font face="Times New Roman">ping</font><font face=宋体>一下网关。</font></span><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'"><o:p></o:p></span></p>
<p style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt" class=p0><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'">2<font face=宋体>：接收数据中有</font><font face="Times New Roman">"\0"</font><font face=宋体>，把后面数据截断了。</font></span><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'"><o:p></o:p></span></p>
<p style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt" class=p0><span style="FONT-FAMILY: '宋体'; FONT-SIZE: 10.5pt; mso-spacerun: 'yes'">解决办法：&nbsp;<font face="Times New Roman">string.replace("\0","")</font><font face=宋体>。</font></span></p>
<!--endfragment-->
<img src ="http://www.cppblog.com/skybook/aggbug/105059.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2010-01-07 10:03 <a href="http://www.cppblog.com/skybook/archive/2010/01/07/105059.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>font 构造时传入fontstyle-枚举类型（整数值表示）</title><link>http://www.cppblog.com/skybook/archive/2009/11/09/100503.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Mon, 09 Nov 2009 12:09:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2009/11/09/100503.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/100503.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2009/11/09/100503.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/100503.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/100503.html</trackback:ping><description><![CDATA[<div>colorFont.myFont.fontStyle &nbsp;：int 类型（存在数据库中读出来的）</div><div>FontStyle fs = (FontStyle)colorFont.myFont.fontStyle;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Font ft = new Font(colorFont.myFont.fontName, colorFont.myFont.fontSize,fs);</div><div>int ifontStyle = (int)ft.fontStyle;</div>
<img src ="http://www.cppblog.com/skybook/aggbug/100503.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2009-11-09 20:09 <a href="http://www.cppblog.com/skybook/archive/2009/11/09/100503.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>VS自带的打包工具（DotNetFrameWork自动打包进去）打包方法</title><link>http://www.cppblog.com/skybook/archive/2009/09/24/97138.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Thu, 24 Sep 2009 09:07:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2009/09/24/97138.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/97138.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2009/09/24/97138.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/97138.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/97138.html</trackback:ping><description><![CDATA[1：添加—新建项目—其它项目类型—安装和部署—安装项目<div>2：在视图—文件系统中，按照源程序bin目录下的结构，构建文件夹及文件（文件夹中套n多文件夹的可以同时开着两个，拖进去，不用一层一层建太麻烦了）</div><div>3：属性-系统必备里-.NETFrameWork2.0打上对勾</div><div>4：视图—文件系统—用户桌面添加上快捷方式，右键添加，同时属性中的alwayscreate 设为true</div><div>5：这样打包好后系统就自动提炼DotNetFrameWork放入到CMTSetup\Debug下面的自动创建的文件夹dotnetfx下面了。</div><img src ="http://www.cppblog.com/skybook/aggbug/97138.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2009-09-24 17:07 <a href="http://www.cppblog.com/skybook/archive/2009/09/24/97138.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>tuxedo10.0 DLL拷贝后也不用安装</title><link>http://www.cppblog.com/skybook/archive/2009/09/24/97128.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Thu, 24 Sep 2009 06:38:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2009/09/24/97128.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/97128.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2009/09/24/97128.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/97128.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/97128.html</trackback:ping><description><![CDATA[1：把（tuxedo安装目录）D:\Program Files\tuxedo10.0_VS2005\bin 下面的DLL都考到应用程序所在目录，即CMT.exe &nbsp;所在的同一目录，同时把D:\Program Files\tuxedo10.0_VS2005下面的locale和udataobj目录也考到应用程序所在目录。<div><div>2： &nbsp;string nlsPath = Application.StartupPath + "\\locale\\C";</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;string curPath = Application.StartupPath;</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Bea.Tuxedo.ATMI.Utils.tuxputenv("NLSPATH=" + nlsPath);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Bea.Tuxedo.ATMI.Utils.tuxputenv("TUXDIR=" + curPath);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Bea.Tuxedo.ATMI.Utils.tuxputenv("APPDIR=" + curPath);</div><div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Bea.Tuxedo.ATMI.Utils.tuxputenv("WSNADDR=//10.5.0.3:9300"); &nbsp; （这个最好读配置文件因为它不是固定的）</div></div><img src ="http://www.cppblog.com/skybook/aggbug/97128.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2009-09-24 14:38 <a href="http://www.cppblog.com/skybook/archive/2009/09/24/97128.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>datastudio 中文设置字符串  ?;NEWCODESET=gb2312,8859_1,819</title><link>http://www.cppblog.com/skybook/archive/2009/07/03/89166.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Fri, 03 Jul 2009 08:19:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2009/07/03/89166.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/89166.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2009/07/03/89166.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/89166.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/89166.html</trackback:ping><description><![CDATA[ <img src ="http://www.cppblog.com/skybook/aggbug/89166.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2009-07-03 16:19 <a href="http://www.cppblog.com/skybook/archive/2009/07/03/89166.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>c#  indexof() 大小写敏感控制 using System.Globalization;  if (Compare.IndexOf(strcuscmd,curLineCmd,CompareOptions.IgnoreCase) !=-1)</title><link>http://www.cppblog.com/skybook/archive/2009/06/22/88297.html</link><dc:creator>天书</dc:creator><author>天书</author><pubDate>Mon, 22 Jun 2009 08:57:00 GMT</pubDate><guid>http://www.cppblog.com/skybook/archive/2009/06/22/88297.html</guid><wfw:comment>http://www.cppblog.com/skybook/comments/88297.html</wfw:comment><comments>http://www.cppblog.com/skybook/archive/2009/06/22/88297.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/skybook/comments/commentRss/88297.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/skybook/services/trackbacks/88297.html</trackback:ping><description><![CDATA[ <img src ="http://www.cppblog.com/skybook/aggbug/88297.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/skybook/" target="_blank">天书</a> 2009-06-22 16:57 <a href="http://www.cppblog.com/skybook/archive/2009/06/22/88297.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>