﻿<?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++博客-万水千山只等闲-随笔分类-API函数、命令和参数介绍</title><link>http://www.cppblog.com/weining45/category/19387.html</link><description /><language>zh-cn</language><lastBuildDate>Mon, 31 Mar 2014 05:09:44 GMT</lastBuildDate><pubDate>Mon, 31 Mar 2014 05:09:44 GMT</pubDate><ttl>60</ttl><item><title>VS2010中字符串相关的安全操作</title><link>http://www.cppblog.com/weining45/archive/2014/03/27/206367.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Thu, 27 Mar 2014 07:15:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2014/03/27/206367.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/206367.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2014/03/27/206367.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/206367.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/206367.html</trackback:ping><description><![CDATA[<dl>
<dt><span style="font-family: Verdana">1.strtok和strtok_s<br /></span><span style="font-family: Verdana; color: black">char* strtok(char* strToken, const char* strDelimit );<br /></span>strToken：待处理的字符串<br />strDelimit：分隔符 
<dt>第一次调用该函数时，第一个参数传入需要分解的字符串，之后第一个参数使用NULL表示继续处理之前传入字符串的剩下内容 
<dt><span class="apple-style-span"><span style="color: red" lang="EN-US"><font class="Apple-style-span" face="宋体">NULL</font></span></span><span class="apple-style-span"><span style="color: red"><font class="Apple-style-span" face="宋体">参数表示调用</font><span lang="EN-US"><font class="Apple-style-span" face="宋体">strtok</font></span><font class="Apple-style-span" face="宋体">继续从</font><span lang="EN-US"><font class="Apple-style-span" face="宋体">string</font></span><font class="Apple-style-span" face="宋体">中上次调用</font><span lang="EN-US"><font class="Apple-style-span" face="宋体"> strtok</font></span><font class="Apple-style-span" face="宋体">时保存的位置开始标记化</font></span></span> 
<dt>注：该函数会改变传入的字符串 
<dt>&nbsp; 
<dt>2.fopen和fopen_s 
<dt>FILE * f<a href="http://baike.baidu.com/view/26337.htm" target="_blank">open</a>(const char * path,const char * mode); 
<dt>
<div class="para">errno_t fopen_s( FILE** pFile, const char *filename, const char *mode );</div>
<dt><br />&nbsp;3.sscanf和sscanf_s
<dt>
<div class="para">int sscanf( <a href="http://baike.baidu.com/view/1065598.htm" target="_blank">const</a> <a href="http://baike.baidu.com/view/1006519.htm" target="_blank">char</a> *, const char *, ...);</div>
<div class="para">int sscanf(const char *buffer,const char *format,[argument ]...);</div>
<div class="para">buffer存储的数据</div>
<div class="para">format格式控制字符串</div>
<div class="para">argument 选择性设定字符串</div>
<div class="para">sscanf会从buffer里读进数据，依照format的格式将数据写入到argument里<br /><br />待详述。。。<br /><br /><br /></div></dt></dl><img src ="http://www.cppblog.com/weining45/aggbug/206367.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2014-03-27 15:15 <a href="http://www.cppblog.com/weining45/archive/2014/03/27/206367.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>memcpy,strcpy,strncpy,memcpy_s</title><link>http://www.cppblog.com/weining45/archive/2012/06/20/179511.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Wed, 20 Jun 2012 08:29:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/06/20/179511.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/179511.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/06/20/179511.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/179511.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/179511.html</trackback:ping><description><![CDATA[<p><span style="font-size: 10pt">void *memcpy(void *dest, const void *src, int n);</span></p>
<p><span style="font-size: 10pt" class="headline-content">功能：</span></p>
<p><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。 </span></p>
<p><span style="font-size: 10pt" class="headline-content">头文件：</span></p>
<p><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#include &lt;string.h&gt; </span></p>
<p><span style="font-size: 10pt"></span><span style="font-size: 10pt" class="headline-content">返回值：</span></p>
<p><span style="font-size: 10pt" class="headline-content"></span><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;指向dest的指针。 </span></p>
<p><span style="font-size: 10pt"></span>&nbsp;</p>
<p><span style="font-size: 10pt">char *strcpy(char *dest, char *src); </p>
<div class="spctrl"></div>
<p>功能：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;把src所指由'\0'结束的字符串复制到dest所指的数组中。 </p>
<p>头文件：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#include "string.h" </p>
<p>返回值：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;指向dest的指针。</p>
<p>&nbsp;</p>
<p><span style="font-size: 10pt">char * strncpy(char *dest, char *src,&nbsp;size_t n); </p>
<div class="spctrl"></div>
<p>功能： </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;将字符串src中最多n个字符复制到字符数组dest中</p>
<p>返回值：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;指向dest的指针。 </p>
<div class="spctrl"></div>
<p>头文件：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#include "string.h" </p>
<p></span>&nbsp;</p>
<p><span style="font-size: 10pt" class="headline-content"><font size="2">memcpy</font>说明：</span></p>
<p><span style="font-size: 10pt">　　1.src和dest所指内存区域不能重叠，函数返回指向dest的指针。 </span></p>
<div class="spctrl"></div>
<p><span style="font-size: 10pt">　　2.与strcpy相比，memcpy并不是遇到'\0'就结束，而是一定会拷贝完n个字节。 </span></p>
<div class="spctrl"></div>
<p><span style="font-size: 10pt">　　3.如果目标数组destin本身已有数据，执行memcpy（）后，将覆盖原有数据（最多覆盖n）。如果要追加数据，则每次执行memcpy后，要将目标数组地址增加到你要追加数据的地址。 </span></p>
<div class="spctrl"></div>
<p><span style="font-size: 10pt">　　//注意，src和dest都不一定是数组，任意的可读写的空间均可。</span></p>
<p>&nbsp;</p>
<div class="spctrl"></div>
<p><font size="2">strcpy</font>说明：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。&nbsp;&nbsp;</p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当src串长度&gt;dest串长度时，程序仍会将整个src串复制到dest区域，可是dest数组已发生溢出。因此会导致dest栈空间溢出以致产生崩溃异常。如果不考虑src串的完整性，可以把dest数组最后一元素置为NULL，从dest串长度处插入NULL截取字串。</span></p>
<p><span style="font-size: 10pt"></span>&nbsp;</p><span style="font-size: 10pt">
<div class="spctrl"></div>
<p>strncpy说明： </p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;它并不像strcpy一样只有遇到NULL才停止复制，而是多了一个条件停止，就是说如果复制到第n个字符还未遇到NULL，也一样停止。</p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果n &gt; dest串长度，dest栈空间溢出产生崩溃异常。 </p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;否则： </p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1）src串长度&lt;=dest串长度,(这里的串长度包含串尾NULL字符) </p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果n=(0, src串长度)，src的前n个字符复制到dest中。但是由于没有NULL字符，所以直接访问dest串会发生栈溢出的异常情况。 </p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果n = src串长度，与strcpy一致。 </p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果n = dest串长度，[0,src串长度]处存放于desk字串，(src串长度, dest串长度]处存放NULL。 </p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2）src串长度&gt;dest串长度 </p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果n =dest串长度，则dest串没有NULL字符，会导致输出会有<a href="http://baike.baidu.com/view/47.htm" target="_blank">乱码</a>。如果不考虑src串复制完整性，可以将dest最后一字符置为NULL。 </p>
<div class="spctrl"></div>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;综上，一般情况下，使用strncpy时，建议将n置为dest串长度（除非你将多个src串都复制到dest数组，并且从dest尾部反向操作)，复制完毕后，为保险起见，将dest串最后一字符置NULL，避免发生在第2)种情况下的输出乱码问题。当然喽，无论是strcpy还是strncpy，保证src串长度&lt;dest串长度才是最重要的。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>strncpy_s:目标空间长度不够时，会弹出assert，使copy不能正常完成，使用时需要指定源缓冲区大小。</p>
<div id="article_content" class="article_content">
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;_s函数只是windows提供的特有函数，功能比较强大，但是在有跨平台需求的软件中，不建议使用。</p>
<p>strncpy:拷贝你指定的个数或者碰到'\0'，不验证源缓冲区长度，可能造成越界。<br /></p>
<p>memcpy:不理'\0'，只拷贝你指定的个数，故strcpy可以不指定字符串长度，实现整串copy，而memcpy必定要指定长度。</p></div>
<p></span>&nbsp;</p><img src ="http://www.cppblog.com/weining45/aggbug/179511.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-06-20 16:29 <a href="http://www.cppblog.com/weining45/archive/2012/06/20/179511.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>route add 命令讲解</title><link>http://www.cppblog.com/weining45/archive/2012/06/14/178782.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Thu, 14 Jun 2012 04:11:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/06/14/178782.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/178782.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/06/14/178782.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/178782.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/178782.html</trackback:ping><description><![CDATA[<p><span style="font-size: 10pt">&nbsp;&nbsp;1.具体功能</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;该命令用于在本地IP路由表中显示和修改条目。使用不带参数的ROUTE可以显示帮助。</span><br /><span style="font-size: 10pt">&nbsp; 2.语法详解&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;route [-f] [-p] [command [destination] [mask netmask] [gateway] [metric&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;metric] [if inte***ce]&nbsp; </span><br /><span style="font-size: 10pt">&nbsp; 3.参数说明</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-f&nbsp;&nbsp;</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;清除所有不是主路由(子网掩码为255.255.255.255的路由)、环回网络路由(目标为127.0.0.0，子网掩码为255.255.255.0的路由)或多</span><span style="font-size: 10pt">播路由(目标为224.0.0.0，子网掩码240.0.0.0的路由)的条目的路由表。如果它与命令之一(例如Add、Change或Delete)结合使用，表会在运</span><span style="font-size: 10pt">行命令之前清除。&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-p&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;与Add命令共同使用时，指定路由被添加到注册表并在启动TCP/IP协议的时候初始化IP路由表。默认情况下，启动TCP/IP协议时不会保</span><span style="font-size: 10pt">存添加的路由,与Print命令一起使用时，则显示永久路由列表。所有其他的命令都忽略此参数。永久路由存储在注册表中的位置是：</span><span style="font-size: 10pt">HKEY_LOCAL_MACHSYSTEMCurrentControlSetServicesTcpipParametersPersistentRoutes。&nbsp;</span><br />&nbsp;&nbsp;&nbsp;<br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;command 指定要运行的命令。下表列出了有效的命令。&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;destination&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;指定路由的网络目标地址。目标地址可以是一个IP网络地址(其中网络地址的主机地址位设置为0)，对于主机路由是IP地址，对于默认</span><span style="font-size: 10pt">路由是0.0.0.0。mask&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;subnetmask&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;指定与网络目标地址相关联的网掩码(又称子网掩码)。子网掩码对于IP网络地址可以是一适当的子网掩码，对于主机路由是</span><span style="font-size: 10pt">255.255.255.255</span><span style="font-size: 10pt">，对于默认路由是0.0.0.0。如果忽略，则使用子网掩码255.255.255.255。定义路由时由于目标地址和子网掩码之间的关系</span><span style="font-size: 10pt">，目标地址不能比它对应的子网掩码更为详细。换句话说，如果子网掩码的一位是0，则目标地址中的对应位就不能设置为1。&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gateway&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;指定超过由网络目标和子网掩码定义的可达到的地址集的前一个或下一个跃点IP地址。对于本地连接的子网路由，网关地址是分配给连</span><span style="font-size: 10pt">子网接口的IP地址。对于要经过一个或多个路由器才可用到的远程路由，网关地址是一个分配给相邻路由器的、可直接达到的IP地址。&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;metric metric&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;为路由指定所需跃点数的整数值(范围是1～9999)，它用来在路由表里的多个路由中选择与转发包中的目标地址最为匹配的路由。所选</span><span style="font-size: 10pt">的路由具有最少的跃点数。跃点数能够反映跃点的数量、路径的速度、路径可靠性、路径吞吐量以及管理属性。&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if inte***ce 指定目标可以到达的接口的接口索引。使用Route </span><span style="font-size: 10pt">print命令可以显示接口及其对应接口索引的列表。对于接口索引可以</span><span style="font-size: 10pt">使用十进制或十六进制的值。对于十六进制值，要在十六进制数的前面加上0x。忽略if参数时，接口由网关地址确定。&nbsp;&nbsp;</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注意：路由表中跃点数一列的值较大是由于允许TCP/IP根据每个LAN接口的IP地址、子网掩码和默认网关的配置自动确定路由表中路由的</span><span style="font-size: 10pt">跃点数造成的。默认启动的自动确定接口跃点数确定了每个接口的速度，调整了每个接口的路由跃点数，因此最快接口所创建的路由具有最低</span><span style="font-size: 10pt">的跃点数。要删除大跃点数，请在每个LAN连接的TCP/IP协议的高级属性中禁用自动确定接口跃点数。&nbsp;</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果在systemrootSystem32DriversEtc文件夹的本地网络文件中存在适当的条目，名称可以用于Destination。只要名称可以通过&#8220;域名</span><span style="font-size: 10pt">系统&#8221;(DNS)查询这样的标准主机名解析技术分解为IP地址，就可以将其用于Gateway，DNS查询使用存储在systemrootSystem32DriversEtc </span><br />&nbsp;&nbsp; <br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 文件夹下的本地主机文件和NetBIOS 名称解析。&nbsp;</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果是Print或Delete命令，可以忽略Gateway参数，使用通配符来表示目标和网关。Destination的值可以是由星号(*)指定的通配符。</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;如果指定目标含有一个星号(*)或问号(?)，它被看作是通配符，只打印或删除匹配的目标路由。星号代表任意一字符序列，问号代表任一字符</span><span style="font-size: 10pt">。例如，10.*.1、192.168.*、127.*和*224*都是星号通配符的有效使用。&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用了无效的目标和子网掩码(网掩码)值的组合，会显示&#8220;Route bad gateway address&nbsp;&nbsp;</span><span style="font-size: 10pt">netmask&#8221;错误消息。目标中有一位或多位设置为1，而其在子网掩码中的对应位设置为0时会发生这个错误。可以通过二进制表示法表示目</span><span style="font-size: 10pt">标和子网掩码来检查这种情况。以二进制表示的子网掩码包括表示目标网络地址部分的一连串的1和表示目标主机地址部分的一连串的0两个部</span><br /><span style="font-size: 10pt">&nbsp; 分。查看目标以确定目标的主机地址部分(由子网掩码所定义)&nbsp;</span><span style="font-size: 10pt">是否有些位设置成了1。&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Windows 98 的Route命令不支持-p参数。&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 只有当TCP/IP协议在网络连接中安装为网络适配器属性的组件时，该命令才可用。&nbsp; </span><br /><span style="font-size: 10pt">&nbsp; 4.例举说明&nbsp; </span><br /><span style="font-size: 10pt">&nbsp; 例子1：要显示IP路由表的完整内容，执行以下命令：&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp; route print&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例子2：要显示IP路由表中以10.开始的路由，执行以下命令：&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route print 10.*&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例子3：要添加默认网关地址为192.168.12.1的默认路由，执行以下命令：&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route add 0.0.0.0 mask 0.0.0.0 192.168.12.1&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例子4：要添加目标为10.41.0.0，子网掩码为255.255.0.0，下一个跃点地址为10.27.0.1的路由，执行以下命令：&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route add 10.41.0.0 mask 255.255.0.0 10.27.0.1&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例子5：要添加目标为10.41.0.0，子网掩码为255.255.0.0，下一个跃点地址为10.27.0.1的永久路由，执行以下命令：&nbsp;&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route -p add 10.41.0.0 mask 255.255.0.0 10.27.0.1&nbsp;&nbsp;</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;例子6：要添加目标为10.41.0.0，子网掩码为255.255.0.0，下一个跃点地址为10.27.0.1，跃点数为7的路由，执行以下命令：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><br />&nbsp;&nbsp;&nbsp;<span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7&nbsp;&nbsp;</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;例子7：要添加目标为10.41.0.0，子网掩码为255.255.0.0，下一个跃点地址为10.27.0.1，接口索引为0x3的路由，执行以下命令：&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 if 0x3&nbsp; </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例子8：要删除目标为10.41.0.0，子网掩码为255.255.0.0的路由，执行以下命令： </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route delete 10.41.0.0 mask 255.255.0.0 </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例子9：要删除IP路由表中以10.开始的所有路由，执行以下命令： </span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route delete 10.*&nbsp;&nbsp;</span></p>
<p><span style="font-size: 10pt"></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;例子10：要将目标为10.41.0.0，子网掩码为255.255.0.0的路由的下一个跃点地址由10.27.0.1更改为10.27.0.25，执行以下命令：&nbsp;</span>&nbsp;&nbsp;&nbsp;<br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route change 10.41.0.0 mask 255.255.0.0 10.27.0.25</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例子11：要添加静态路由让目标为172.0.0.0网段的都转发到网为为172.25.25.1的路由上</span><br /><span style="font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; route add 172.0.0.0 mask 255.0.0.0 172.25.25.1 metric 2 -p&nbsp; </span></p> <img src ="http://www.cppblog.com/weining45/aggbug/178782.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-06-14 12:11 <a href="http://www.cppblog.com/weining45/archive/2012/06/14/178782.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>网络函数</title><link>http://www.cppblog.com/weining45/archive/2012/06/05/177607.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Tue, 05 Jun 2012 01:29:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/06/05/177607.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/177607.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/06/05/177607.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/177607.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/177607.html</trackback:ping><description><![CDATA[<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">WnetAddConnection2</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">是Windows网络函数，可实现网络驱动器的映射和断开。</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">在Microsoft Windows环境下，应用程序使用Windows网络函数（WNet）来实现网络功能而不用关心网络的供应商及具体实现，因为WNet函数是独立于网络的。</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">Wnet</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">函数主要有：WnetAddConnection , WnetAddConnection2 , WnetAddConnection3 , WnetCancelConnection2等。</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt">&nbsp;</p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">参数表&nbsp;</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">lpNetResource &nbsp; NETRESOURCE</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">，在这个结构中设置了下述字段，对要连接的网络资源进行了定义：dwType，lpLocalName（可为vbNullString），lpRemoteName，lpProvider（设为vbNullString，表示用默认提供者）。该结构的其他所有变量都会被忽略&nbsp;</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">lpPassword &nbsp; String</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">，可选的一个密码。如为vbNullString，表示采用当前用户的默认密码。如为一个空字串，则不用任何密码&nbsp;</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">lpUserName &nbsp; String</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">，用于连接的用户名。如为vbNullString，表示使用当前用户&nbsp;</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">dwFlags &nbsp; Long</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">，设为零；或指定常数CONNECT_UPDATE_PROFILE，表示创建永久性连接</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt">&nbsp;</p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">Service</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">：设定以后，Service程序中直接使用网络路径就可以了，比如：\\ServerName\H\Folder\Filename &nbsp; 这样就可以了。至于界面程序设定时选择的网络映射的磁盘，以使用WNetGetConnection得到对应的网络名，将网络名保存下来，Service程序中直接使用网络名就可以了问题是我现在要的结果就是在系统还未登录时，即在服务程序启动的时候映射一个网络盘符。 </span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">我曾试过在Userinit中加入自己的桌面应用程序，但这里，系统只有在输入用户名，密码之后才会调用。 我要得到就是在系统还未出现登录框里就映射出一个盘符。请教怎么做？</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">在系统没有登录时，此时没有用户会去访问这个映射的盘符，只有你自己的程序需要。你自己的程序，改为网络路径就可以了。我当初的Service程序，本来也是想要你那样做，但是后来发现不行，就改成使用网络路径了。我在程序的设定中，保存下映射的网络盘符和对应的网络名称，在数据库中存放的文件名使用的是映射的盘符，在Service程序中，会自动将映射的盘符和网录路径名之间做转换。</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">Service &nbsp; </span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">属性的登录一栏中，登录身份不要使用&#8220;本地系统账户&#8221;，自己指定一个正常的账户就可以了</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">如果对方是xp系统,需要先改下组策略</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">WnetAddConnection2</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">返回1219错误分析：</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">断开连接并不是立刻生效？</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">在断开连接的函数中使用CONNECT_UPDATE_PROFILE参数</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">更新profile</span></p> <img src ="http://www.cppblog.com/weining45/aggbug/177607.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-06-05 09:29 <a href="http://www.cppblog.com/weining45/archive/2012/06/05/177607.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>net use</title><link>http://www.cppblog.com/weining45/archive/2012/06/05/177605.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Tue, 05 Jun 2012 01:28:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/06/05/177605.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/177605.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/06/05/177605.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/177605.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/177605.html</trackback:ping><description><![CDATA[<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">获取当前的共享文件夹的连接情况</span></p> <img src ="http://www.cppblog.com/weining45/aggbug/177605.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-06-05 09:28 <a href="http://www.cppblog.com/weining45/archive/2012/06/05/177605.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>vsprintf</title><link>http://www.cppblog.com/weining45/archive/2012/06/05/177602.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Tue, 05 Jun 2012 01:25:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/06/05/177602.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/177602.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/06/05/177602.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/177602.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/177602.html</trackback:ping><description><![CDATA[<dl>
<dt>
<h3><strong><span style="font-family: '微软雅黑','sans-serif'"><span style="font: 10pt Tahoma">&nbsp;</span></span><span style="font-family: Tahoma; font-size: 10pt">int vsprintf(char *string, char *format, va_list param)</span></strong></h3></dt>
<dt>
<h3><span style="font-family: Tahoma; font-size: 10pt"></span><span style="font-family: Tahoma; font-size: 10pt">功能：送格式化输出到串中（将param 按格式format写入字符串string中）</span></h3></dt>
<dt>
<h3><span style="font-family: Tahoma; font-size: 10pt"></span><span style="font-family: Tahoma; font-size: 10pt">返回：正常情况下返回生成字串的长度(除去\0),错误情况返回负值</span></h3></dt></dl><img src ="http://www.cppblog.com/weining45/aggbug/177602.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-06-05 09:25 <a href="http://www.cppblog.com/weining45/archive/2012/06/05/177602.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>va_list、va_start和va_end的使用</title><link>http://www.cppblog.com/weining45/archive/2012/06/05/177593.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Tue, 05 Jun 2012 01:12:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/06/05/177593.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/177593.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/06/05/177593.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/177593.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/177593.html</trackback:ping><description><![CDATA[<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">函数参数是以栈的形式存取，从右至左入栈，当无法列出传递给函数的所有实参的类型和数目时，可用省略号指定参数表。</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">获取省略号指定的参数的方法：在函数体中声明一个va_list，然后用va_start函数来获取参数列表中的参数，使用完毕后调用va_end()结束。</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">va_list</span><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">是一个字符指针，可以理解为指向当前参数的一个指针，取参必须通过这个指针进行。在调用参数表之前，在函数体中声明一个va_list类型的变量ap；</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">然后用va_start()实现ap的初始化，让它指向可变参数表里面的第一个参数。该函数有两个参数，第一个参数就是ap，第二个参数是在变量表前面紧挨着的一个变量，即&#8220;&#8230;&#8230;&#8221;之前的那个参数；</span></p>
<p style="text-indent: 18pt; margin: 0cm 0cm 6pt"><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">然后是获取参数，调用va_arg()函数，它的第一个参数是ap，第二个参数是要获取的参数的指定类型，然后返回这个指定类型的值，并且把ap的位置指向变参表的下一个变量位置；</span></p><span style="font-family: '微软雅黑','sans-serif'; font-size: 9pt">获取所有参数之后，必须将这个ap指针关掉，以免发生危险，方法是调用va_end()函数，它将输入的参数ap置为NULL。</span> <img src ="http://www.cppblog.com/weining45/aggbug/177593.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-06-05 09:12 <a href="http://www.cppblog.com/weining45/archive/2012/06/05/177593.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>GetCommState </title><link>http://www.cppblog.com/weining45/archive/2012/05/30/176735.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Wed, 30 May 2012 03:43:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/05/30/176735.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/176735.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/05/30/176735.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/176735.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/176735.html</trackback:ping><description><![CDATA[<dl>
<dt>
<div align="justify"><span style="font-family: Arial; font-size: 10pt">BOOL GetCommState( HANDLE </span><em style="font-family: Arial; font-size: 10pt">hFile</em>, <span style="font-size: 10pt">LPDCB </span><em style="font-size: 10pt">lpDCB</em><span style="font-size: 10pt"> </span>); </div>
<dt>&nbsp; 
<dt><span style="font-family: Arial; font-size: 10pt">读取串口设置(波特率,校验,停止位,数据位等) </span>
<dt>&nbsp; 
<dt><span style="font-family: Arial; font-size: 10pt">参数：</span> 
<dt><span style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hFile是由CreateFile函数返回指向已打开串行口的句柄。</span> 
<dt>
<div align="justify"><em style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;</em><em style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;lpDCB</em><span style="font-size: 10pt"> ：指向设备控制块DCB</span>。 </div>
<dt>&nbsp; 
<dt><span style="font-family: Arial; font-size: 10pt">返回值：</span> 
<dt><span style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;函数调用成功，返回非0；函数调用失败，返回0。 </span>
<dt>&nbsp; 
<dt><span style="font-family: Arial; font-size: 10pt">当应用程序仅仅需要修改一部分串行口的配置值时，可以通过GetCommState函数获得当前的DCB结构，然后更改参数，再调用SetCommState函数设置修改过的DCB来配置串行口。</span></dt></dl><img src ="http://www.cppblog.com/weining45/aggbug/176735.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-05-30 11:43 <a href="http://www.cppblog.com/weining45/archive/2012/05/30/176735.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SetCommTimeouts</title><link>http://www.cppblog.com/weining45/archive/2012/05/30/176733.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Wed, 30 May 2012 03:38:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/05/30/176733.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/176733.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/05/30/176733.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/176733.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/176733.html</trackback:ping><description><![CDATA[<dl>
<dt><span style="font-family: Arial; font-size: 10pt"><font size="2"><span style="font-family: Arial; font-size: 10pt">BOOL SetCommTimeouts( </span><span style="font-family: Arial; font-size: 10pt">HANDLE hFile,&nbsp; </span></font><span style="font-family: Arial; font-size: 10pt">LPCOMMTIMEOUTS lpCommTimeouts </span><span style="font-family: Arial; font-size: 10pt">); </span></span></dt>
<dt><span style="font-family: Arial; font-size: 10pt"></span>&nbsp;</dt>
<dt><span style="font-family: Arial; font-size: 10pt">windows系统利用此函数设定通讯设备读写时的超时参数。</span></dt>
<dt><span style="font-family: Arial; font-size: 10pt">　　</span></dt>
<dt><span style="font-family: Arial; font-size: 10pt">参数：</span></dt>
<dt><span style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: Arial; font-size: 10pt">hFile：</span><span style="font-family: Arial; font-size: 10pt">由CreateFile函数返回指向已打开串行口的句柄。</span></dt>
<dt><span style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font size="2"><span style="font-family: Arial; font-size: 10pt">lpCommTimeouts </span></font></span><span style="font-family: Arial; font-size: 10pt">：指向拥有超时数据的控制块COMMTIMEOUTS。</span></dt>
<dt><span style="font-family: Arial; font-size: 10pt"></span>&nbsp;</dt>
<dt><span style="font-family: Arial; font-size: 10pt">返回值：</span></dt>
<dt><span style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: Arial; font-size: 10pt">函数调用成功，</span><span style="font-family: Arial; font-size: 10pt">返回</span><span style="font-family: Arial; font-size: 10pt">非0；</span><span style="font-family: Arial; font-size: 10pt">函数调用失败，</span><span style="font-family: Arial; font-size: 10pt">返回</span><span style="font-family: Arial; font-size: 10pt">0。</span></dt></dl><img src ="http://www.cppblog.com/weining45/aggbug/176733.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-05-30 11:38 <a href="http://www.cppblog.com/weining45/archive/2012/05/30/176733.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>GetCommTimeouts</title><link>http://www.cppblog.com/weining45/archive/2012/05/30/176730.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Wed, 30 May 2012 03:29:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/05/30/176730.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/176730.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/05/30/176730.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/176730.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/176730.html</trackback:ping><description><![CDATA[<dl>
<dt><span style="font-family: Arial; font-size: 10pt"><span style="font-family: Arial; font-size: 10pt">BOOL GetCommTimeouts( </span><span style="font-family: Arial; font-size: 10pt">HANDLE hFile,&nbsp; </span><span style="font-family: Arial; font-size: 10pt">LPCOMMTIMEOUTS lpCommTimeouts </span><span style="font-family: Arial; font-size: 10pt">); </span>
<dt></span>&nbsp; 
<dt><span style="font-family: Arial; font-size: 10pt">Windows系统利用此函数获取特定的通讯设备读写时的超时参数设定。 </span>
<dt><span style="font-family: Arial; font-size: 10pt"></span>&nbsp;
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">参数：</span></div></dt>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hFile：由CreateFile函数返回指向已打开串行口的句柄。</span></div></dt>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font size="2"><span style="font-family: Arial; font-size: 10pt">lpCommTimeouts </span></font></span><span style="font-family: Arial; font-size: 10pt">：指向控制块COMMTIMEOUTS。</span></div></dt>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt"></span>&nbsp;</div></dt>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">返回值：</span></div></dt>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;函数调用成功，返回非0；函数调用失败，返回0。</span></div></dt></dl><img src ="http://www.cppblog.com/weining45/aggbug/176730.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-05-30 11:29 <a href="http://www.cppblog.com/weining45/archive/2012/05/30/176730.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SetupComm</title><link>http://www.cppblog.com/weining45/archive/2012/05/30/176727.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Wed, 30 May 2012 03:15:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/05/30/176727.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/176727.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/05/30/176727.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/176727.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/176727.html</trackback:ping><description><![CDATA[<dl>
<dt><span style="font-family: Arial; font-size: 10pt">&nbsp;</span><span style="font-family: Arial; font-size: 10pt">BOOL SetupComm（HANDLE hFile， DWORD dwInQueue， DWORD dwOutQueue ）; </span></dt></dl>
<p><span style="font-family: Arial; font-size: 10pt"><span style="font-family: Arial; font-size: 10pt">该函数初始化一个指定的通信设备的通信参数。</span></span></p>
<dl>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">参数： </span></div>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">　　hFile ：[IN]通讯设备句柄。 CreateFile函数返回此句柄。 </span></div>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">　　dwInQueue：[in]指定推荐的大小，以字节为单位，在设备的内部输入缓冲区。 </span></div>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">　　dwOutQueue ：[in]指定推荐的大小，以字节为单位，对设备的内部输出缓冲区。 </span></div>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt"></span>&nbsp;</div>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">返回值： </span></div>
<dt>
<div class="spctrl"><span style="font-family: Arial; font-size: 10pt">　　非零表示成功。零表示失败。 要获得更多错误信息，调用GetLastError函数 </span></div></dt></dl><img src ="http://www.cppblog.com/weining45/aggbug/176727.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-05-30 11:15 <a href="http://www.cppblog.com/weining45/archive/2012/05/30/176727.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ios::nocreate</title><link>http://www.cppblog.com/weining45/archive/2012/05/07/173926.html</link><dc:creator>Winnie</dc:creator><author>Winnie</author><pubDate>Mon, 07 May 2012 10:56:00 GMT</pubDate><guid>http://www.cppblog.com/weining45/archive/2012/05/07/173926.html</guid><wfw:comment>http://www.cppblog.com/weining45/comments/173926.html</wfw:comment><comments>http://www.cppblog.com/weining45/archive/2012/05/07/173926.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/weining45/comments/commentRss/173926.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/weining45/services/trackbacks/173926.html</trackback:ping><description><![CDATA[  <img src ="http://www.cppblog.com/weining45/aggbug/173926.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/weining45/" target="_blank">Winnie</a> 2012-05-07 18:56 <a href="http://www.cppblog.com/weining45/archive/2012/05/07/173926.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>