﻿<?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++博客-daiybh@ this-&gt;cppblog-随笔分类-vs Studio IDE</title><link>http://www.cppblog.com/daiybh/category/5259.html</link><description>我的，我的，还是我的！！</description><language>zh-cn</language><lastBuildDate>Sat, 09 Aug 2008 11:02:08 GMT</lastBuildDate><pubDate>Sat, 09 Aug 2008 11:02:08 GMT</pubDate><ttl>60</ttl><item><title>vc2008 中局部代码折叠</title><link>http://www.cppblog.com/daiybh/archive/2008/08/08/58340.html</link><dc:creator>代李</dc:creator><author>代李</author><pubDate>Fri, 08 Aug 2008 06:45:00 GMT</pubDate><guid>http://www.cppblog.com/daiybh/archive/2008/08/08/58340.html</guid><wfw:comment>http://www.cppblog.com/daiybh/comments/58340.html</wfw:comment><comments>http://www.cppblog.com/daiybh/archive/2008/08/08/58340.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/daiybh/comments/commentRss/58340.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/daiybh/services/trackbacks/58340.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 使用中发现 vc2008 team System 中代码折叠只到函数，不具体到语句块的折叠。。。<br>&nbsp;&nbsp;&nbsp; 先前使用vc2008 Express Edition 的时候还有该功能，难道team就给干掉了。<br>&nbsp;&nbsp;&nbsp; 郁闷了半天，咱就是奔这个功能来的呀。。。<img src="http://www.cppblog.com/CuteSoft_Client/CuteEditor/images/emteeth.gif" align="absmiddle" border="0"><br>&nbsp;&nbsp;&nbsp; 后来在设置项里面发现了秘密。。原来team 给藏起来，一般人不给用。<br>&nbsp;&nbsp; 具体设置方式：<br>&nbsp;&nbsp; 工具(tools) -&gt; 选项(Options) -&gt; 文本编辑器(Text Editor) -&gt; C/C++ -&gt; 格式设置(Formatting) -&gt; 语句块的自动大纲显示(Automatic outlining of statement blocks)<br><hr style="width: 100%; height: 2px;">over.<br><img src ="http://www.cppblog.com/daiybh/aggbug/58340.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/daiybh/" target="_blank">代李</a> 2008-08-08 14:45 <a href="http://www.cppblog.com/daiybh/archive/2008/08/08/58340.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>应用程序配置不正确</title><link>http://www.cppblog.com/daiybh/archive/2007/10/31/35599.html</link><dc:creator>代李</dc:creator><author>代李</author><pubDate>Wed, 31 Oct 2007 06:37:00 GMT</pubDate><guid>http://www.cppblog.com/daiybh/archive/2007/10/31/35599.html</guid><wfw:comment>http://www.cppblog.com/daiybh/comments/35599.html</wfw:comment><comments>http://www.cppblog.com/daiybh/archive/2007/10/31/35599.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cppblog.com/daiybh/comments/commentRss/35599.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/daiybh/services/trackbacks/35599.html</trackback:ping><description><![CDATA[
<p>问题：vc2005里面编译的程序 在xp下运行报</p>
<p><strong style="FONT-FAMILY: Tahoma,sans-serif"><span style="COLOR: #c0c0c0"><strong style="FONT-FAMILY: Tahoma,sans-serif">"由于应用程序配置不正确，应用程序未能启动。重新安装应用程序可能会纠正这个问题。"</strong></span></strong></p>
<p>起因： 代码以前是用vc6写的 后来用vc2005 直接升级使用。</p>
<p>分析：见ck写的 <a href="http://www.panzhishi.com/classyk/article.asp?id=4">http://www.panzhishi.com/classyk/article.asp?id=4</a></p>
<p>看了 ck的文章 照着他的方法 还不行，丫 难道人品问题。后来又找到一篇文章说 加个 #undef _AFXDLL 呵呵 还真行</p>
<br/><p>解决方法：</p>
<ol>
<li>
<p>改变运行时库 多线程(/mt)</p>
</li>
<li>
<p>在stdafx.h顶上面 加 #undef _AFXDLL<br/><br/></p>
</li>
</ol>
<p>刚刚在网上看到一个文章 讲得很细 <a href="http://www.cnblogs.com/riky/archive/2007/05/11/743310.html">http://www.cnblogs.com/riky/archive/2007/05/11/743310.html</a> 还没试过</p>
<p><!--more--></p>
<p>再次发现： 带上必要的dll 再带上Microsoft.VC80.MFC.manifest Microsoft.VC80.CRT.manifest 可以运行。。不晓得正确与否。</p>
<img src ="http://www.cppblog.com/daiybh/aggbug/35599.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/daiybh/" target="_blank">代李</a> 2007-10-31 14:37 <a href="http://www.cppblog.com/daiybh/archive/2007/10/31/35599.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>VS2005中的单元测试（转载）</title><link>http://www.cppblog.com/daiybh/archive/2007/09/28/33080.html</link><dc:creator>代李</dc:creator><author>代李</author><pubDate>Fri, 28 Sep 2007 02:42:00 GMT</pubDate><guid>http://www.cppblog.com/daiybh/archive/2007/09/28/33080.html</guid><wfw:comment>http://www.cppblog.com/daiybh/comments/33080.html</wfw:comment><comments>http://www.cppblog.com/daiybh/archive/2007/09/28/33080.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/daiybh/comments/commentRss/33080.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/daiybh/services/trackbacks/33080.html</trackback:ping><description><![CDATA[
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">原始文件：<a href="http://blog.oracle.com.cn/155011/viewspace_3896.html">http://blog.oracle.com.cn/155011/viewspace_3896.html</a></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">一、</span></span> <span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US">VS2005</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">测试功能介绍<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">1. </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">测试简介<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US">VS2005</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">提供的新功能，可以直接在解决方案中创建一个测试项目，对一个或多个项目进行测试。测试项目会自动生成大部分的测试代码，只需要修改入参等值便可对代码进行自动测试。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">2. </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">测试类型<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes">单元测试：可调用类的方法，传递合适的参数，并验证返回值是否为所期望的值。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p style="TEXT-ALIGN: left"><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes" xml:lang="EN-US">Web</span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes">测试：<span lang="EN-US" xml:lang="EN-US">Web</span> 测试是由一系列有序的<span lang="EN-US" xml:lang="EN-US">HTTP</span> 请求组成的<span lang="EN-US" xml:lang="EN-US">,</span>以获得有关它所请求的页或站点的测试报告特定详细信息。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes">负载测试：使用负载测试封装非手动测试，例如单元测试、<span lang="EN-US" xml:lang="EN-US">Web</span> 测试和一般测试，然后通过使用虚拟用户同时运行它们。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes">一般测试：一般测试是经过包装后在<span lang="EN-US" xml:lang="EN-US">Visual Studio</span> 中用作测试的现有程序。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes">手动测试：当测试任务将由测试工程师（而非使用自动脚本）完成时，使用手动测试类型。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes">顺序测试：使用顺序测试可按照您指定的顺序来执行一组测试。</span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US"><br/></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">3. </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">单元测试<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p style="TEXT-ALIGN: left"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes; mso-hansi-font-family: 'Times New Roman'">使用单元测试可以创建用<span lang="EN-US" xml:lang="EN-US">C++</span>、<span lang="EN-US" xml:lang="EN-US">Visual C#</span> 或<span lang="EN-US" xml:lang="EN-US">Visual Basic</span> 编写的、演练源代码的编程测试。单元测试可调用类的方法，传递合适的参数，并验证返回值是否为所期望的值。</span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US"><br/></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">4. </span></span> <span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US">Assert</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">类<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体">使用 <span lang="EN-US" xml:lang="EN-US">true/false</span> 命题验证单元测试中的条件。</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'">如果此条件计算为</span> <span lang="EN-US" style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Times New Roman" xml:lang="EN-US">true</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'">，则断言通过。</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体">通过引发 <span lang="EN-US" xml:lang="EN-US">AssertFailedException</span> 来发出信号表示测试失败。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体" xml:lang="EN-US">Assert</span> <span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体">类可对特定功能进行验证。单元测试方法执行开发代码中的方法代码，但只有包含 <span lang="EN-US" xml:lang="EN-US">Assert</span> 语句时才能报告代码行为方面的内容。</span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US"><br/></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">二、</span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">测试步骤<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">1. </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">创建一个<span lang="EN-US" xml:lang="EN-US">WinForm</span>项目<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;1 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">打开<span lang="EN-US" xml:lang="EN-US">VS2005</span>，创建一个<span lang="EN-US" xml:lang="EN-US">WinForm</span>项目。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;2 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">在<span lang="EN-US" xml:lang="EN-US">Form1</span>上添加一个<span lang="EN-US" xml:lang="EN-US">button</span>，写上单击事件，并添加一个私有方法，运行成功。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">2. </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">新建测试项目<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;1 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">点击主菜单<span lang="EN-US" xml:lang="EN-US">-&gt;</span>测试<span lang="EN-US" xml:lang="EN-US">-&gt;</span>单元测试向导，选择创建新的<span lang="EN-US" xml:lang="EN-US">Visual C#</span>测试项目，并输入项目名称。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;2 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">在"创建单元测试"选择框中钩选要测试的项目，确定。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;3 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">这时<span lang="EN-US" xml:lang="EN-US">VS2005</span>会自动生成测试代码，并弹出一个等待框。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;4 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">完成后查看测试项目，会发现添加了很多测试类，如：</span><span lang="EN-US" style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes; mso-hansi-font-family: 'Times New Roman'" xml:lang="EN-US">Form1Test.cs</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes; mso-hansi-font-family: 'Times New Roman'">，类里面的方法名也是诸如</span><span lang="EN-US" style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes; mso-hansi-font-family: 'Times New Roman'" xml:lang="EN-US">button1_ClickTest()</span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes; mso-hansi-font-family: 'Times New Roman'">的测试方法。</span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US"><br/></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">3. </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">运行测试项目<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;1 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">生成测试项目，成功。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;2 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">选择主菜单<span lang="EN-US" xml:lang="EN-US">-&gt;</span>测试<span lang="EN-US" xml:lang="EN-US">-&gt;</span>窗口，打开测试视图或测试管理器，可以看到测试项目下的所有测试方法。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;3 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">钩选要测试的方法（如果是测试视图则用<span lang="EN-US" xml:lang="EN-US">Ctrl/Shift</span>直接选择记录使其高亮），右键调试选中的测试。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">4. </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">测试结果<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;1 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">通过：说明测试的方法没有问题。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;2 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">错误：可以看到错误的测试名称、项目、错误信息等，方便找出错误产生的原因。<span lang="EN-US" xml:lang="EN-US"><br/></span></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;3 </span></span> <span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体">没有结论：</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes; mso-hansi-font-family: 'Times New Roman'">无法验证不返回值的方法。</span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US"><br/></span></p>
<p><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-bidi-font-family: 宋体" xml:lang="EN-US"><span style="mso-list: Ignore">&lt;4 </span></span> <span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 宋体; mso-font-kerning: 0pt; mso-no-proof: yes; mso-hansi-font-family: 'Times New Roman'">所有测试的结果都可以在测试结果窗口中看到，双击会打开新页面显示更详细的信息。</span><span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体" xml:lang="EN-US"><br/></span></p>
<br/><p class="zoundry_bw_tags">
  <!-- Tag links generated by Zoundry Blog Writer. Do not manually edit. http://www.zoundry.com -->
  <span class="ztags"><span class="ztagspace">Technorati</span> : <a href="http://technorati.com/tag/vs2005%20%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95" class="ztag" rel="tag">vs2005 单元测试</a></span> 
</p><img src ="http://www.cppblog.com/daiybh/aggbug/33080.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/daiybh/" target="_blank">代李</a> 2007-09-28 10:42 <a href="http://www.cppblog.com/daiybh/archive/2007/09/28/33080.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>VS 2005 的BUG----IntelliSense</title><link>http://www.cppblog.com/daiybh/archive/2007/09/25/32830.html</link><dc:creator>代李</dc:creator><author>代李</author><pubDate>Tue, 25 Sep 2007 01:46:00 GMT</pubDate><guid>http://www.cppblog.com/daiybh/archive/2007/09/25/32830.html</guid><wfw:comment>http://www.cppblog.com/daiybh/comments/32830.html</wfw:comment><comments>http://www.cppblog.com/daiybh/archive/2007/09/25/32830.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/daiybh/comments/commentRss/32830.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/daiybh/services/trackbacks/32830.html</trackback:ping><description><![CDATA[
<p>VS2005会在你代码改变的时候会去更新IntelliSense.(智能感知,代码提示,关联之类)</p>
<p>如工程过大就会出现更新很慢,CPU占用100%.每次改了头文件,按Ctrl+S它就会更新.</p>
<p>然后VS就会很卡.</p>
<p>这已是一个已知的VS的BUG.<br/>网上给出一个解决方案是把"X:\Program Files\Microsoft Visual Studio 8\VC\vcpackages\feacp.dll"重命名.</p>
<br/><p>vs2005sp1修改了该bug。。。。 但我打了SP1后还是觉得慢，难道是sp1打错了？管他的 重命名之，用va好了。</p>
<img src ="http://www.cppblog.com/daiybh/aggbug/32830.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/daiybh/" target="_blank">代李</a> 2007-09-25 09:46 <a href="http://www.cppblog.com/daiybh/archive/2007/09/25/32830.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于vs2005中 va_arg的BUG</title><link>http://www.cppblog.com/daiybh/archive/2007/08/21/30536.html</link><dc:creator>代李</dc:creator><author>代李</author><pubDate>Tue, 21 Aug 2007 15:25:00 GMT</pubDate><guid>http://www.cppblog.com/daiybh/archive/2007/08/21/30536.html</guid><wfw:comment>http://www.cppblog.com/daiybh/comments/30536.html</wfw:comment><comments>http://www.cppblog.com/daiybh/archive/2007/08/21/30536.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/daiybh/comments/commentRss/30536.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/daiybh/services/trackbacks/30536.html</trackback:ping><description><![CDATA[
<p>今天在VS2005里用到了<a href="http://www.codeproject.com/listctrl/creportctrl.asp?df=100&amp;forumid=15255&amp;fr=26">CReportCtrl</a> 类。</p>
<p>发现 用到 int CReportCtrl::InsertItem(int nIndex, LPCTSTR pszText, ...) 时。如果可变参数个数（LPCTSTR pszText）的小于 开始设置listctrl的列数 则会报错。<br/>几经查看才发现是 va_arg 惹的祸。微软网站上给出了解释，<a href="http://support.microsoft.com/kb/920285/en-us" target="_blank">FIX: The va_arg function returns an incorrect value in a Visual C++ 2005 application</a></p>
<p>文章里说 wait for the next Visual Studio 2005 service pack ，but 我装了sp1 还是有问题，难道是我装的SP有问题。。</p>
<p>在这给出InsertItem实现</p>
<p><code>int CReportCtrl::InsertItem(int nIndex, LPCTSTR pszText, ...)<br/>{<br/></code></p>
<blockquote>
<p><br/>const int iIndex = CListCtrl::InsertItem(nIndex, pszText);<br/>if (!_IsValidIndex(iIndex))<br/>return iIndex;<br/>CStringArray arr;<br/>arr.Add(pszText);<br/>va_list list;<br/>va_start(list, pszText);<br/>for(int iColumn = 1; iColumn &lt; GetColumnCount(); iColumn++)<br/>{<br/></p>
<blockquote>
<p><span style="COLOR: #ff0000">LPCTSTR lpsz = va_arg(list, LPCTSTR); //在这产生问题。<br/></span>CString str;<br/>str = (lpsz==NULL)?_T(""):lpsz;<br/><span style="FONT-SIZE: 0.75em; COLOR: #004000">//下面是对上面的展开 否则调试时不能定位到这里<br/>if (lpsz == NULL)<br/>str = _T("") ;<br/>else<br/>str =CString(lpsz);<br/></span>arr.Add(str);<br/>CListCtrl::SetItemText(iIndex, iColumn, str);<br/></p>
</blockquote>
<p>}<br/>va_end(list);<br/>_AssignNewItemData(iIndex, arr.GetData(), arr.GetSize());<br/>return iIndex;<br/>}<br/></p>
</blockquote>
<!--more-->
有啥办法能解决呢。思考ing......
<p class="zoundry_bw_tags">
  <!-- Tag links generated by Zoundry Blog Writer. Do not manually edit. http://www.zoundry.com -->
  <span class="ztags"><span class="ztagspace">Technorati</span> : <a href="http://technorati.com/tag/vs2005%20va_arg" class="ztag" rel="tag">vs2005 va_arg</a></span> 
</p><img src ="http://www.cppblog.com/daiybh/aggbug/30536.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/daiybh/" target="_blank">代李</a> 2007-08-21 23:25 <a href="http://www.cppblog.com/daiybh/archive/2007/08/21/30536.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>