﻿<?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++博客-lijiakxl的专栏-随笔分类-奇技淫巧</title><link>http://www.cppblog.com/lijiakxl/category/11599.html</link><description>Make it right before you make it faster. 
Keep it right when you make it faster. 
Make it clear before you make it faster. 
Do not sacrifice clarity for small gains in efficiency.</description><language>zh-cn</language><lastBuildDate>Sun, 07 Feb 2010 05:05:21 GMT</lastBuildDate><pubDate>Sun, 07 Feb 2010 05:05:21 GMT</pubDate><ttl>60</ttl><item><title>把以前的程序推到 重写  很爽啊!!!</title><link>http://www.cppblog.com/lijiakxl/archive/2009/11/25/101906.html</link><dc:creator>李佳</dc:creator><author>李佳</author><pubDate>Wed, 25 Nov 2009 07:01:00 GMT</pubDate><guid>http://www.cppblog.com/lijiakxl/archive/2009/11/25/101906.html</guid><wfw:comment>http://www.cppblog.com/lijiakxl/comments/101906.html</wfw:comment><comments>http://www.cppblog.com/lijiakxl/archive/2009/11/25/101906.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/lijiakxl/comments/commentRss/101906.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lijiakxl/services/trackbacks/101906.html</trackback:ping><description><![CDATA[推倒的过程就已经学到了不少东西....<br>最近重写了以前的一个程序...原来 用了OO 代码可以写的如此优雅... <br>建议没事了&nbsp; 推推以前的程序重写&nbsp; 学到的东西也是不少的&nbsp; 特别是对需求的理解 对架构的设计<br><br><img src ="http://www.cppblog.com/lijiakxl/aggbug/101906.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lijiakxl/" target="_blank">李佳</a> 2009-11-25 15:01 <a href="http://www.cppblog.com/lijiakxl/archive/2009/11/25/101906.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>好久没写文章了  贴个奇技淫巧</title><link>http://www.cppblog.com/lijiakxl/archive/2009/10/22/99179.html</link><dc:creator>李佳</dc:creator><author>李佳</author><pubDate>Thu, 22 Oct 2009 04:02:00 GMT</pubDate><guid>http://www.cppblog.com/lijiakxl/archive/2009/10/22/99179.html</guid><wfw:comment>http://www.cppblog.com/lijiakxl/comments/99179.html</wfw:comment><comments>http://www.cppblog.com/lijiakxl/archive/2009/10/22/99179.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/lijiakxl/comments/commentRss/99179.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lijiakxl/services/trackbacks/99179.html</trackback:ping><description><![CDATA[系统待机功能对于我这种笔记本用户很常见&nbsp;&nbsp; 一直不知道怎么实现 <br>今天搜索了一下&nbsp; 找到了一个命令行的&nbsp;&nbsp; 稍微一改&nbsp; 就能加到代码中去了&nbsp;&nbsp; <br><br>system("rundll32.exe powrprof.dll SetSuspendState");
<br><br>测试通过<br><br><img src ="http://www.cppblog.com/lijiakxl/aggbug/99179.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lijiakxl/" target="_blank">李佳</a> 2009-10-22 12:02 <a href="http://www.cppblog.com/lijiakxl/archive/2009/10/22/99179.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>这段时间项目总结  总结一下代码</title><link>http://www.cppblog.com/lijiakxl/archive/2009/09/11/95935.html</link><dc:creator>李佳</dc:creator><author>李佳</author><pubDate>Fri, 11 Sep 2009 08:06:00 GMT</pubDate><guid>http://www.cppblog.com/lijiakxl/archive/2009/09/11/95935.html</guid><wfw:comment>http://www.cppblog.com/lijiakxl/comments/95935.html</wfw:comment><comments>http://www.cppblog.com/lijiakxl/archive/2009/09/11/95935.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/lijiakxl/comments/commentRss/95935.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lijiakxl/services/trackbacks/95935.html</trackback:ping><description><![CDATA[一<br>数据库操作&nbsp; <br>m_pConn-&gt;Execute((_bstr_t)strSQL , &amp;index , 1);
<br>第二个参数的值是影响的行数<br>有了这个&nbsp; 就可以在Update数据库的记录的时候不用先Select查看是否存在数据而执行两条SQL语句影响服务器的效率了<br><br>二<br>捕获ADO的数据库操作的异常<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">catch</span><span style="color: #000000;">(_com_error&nbsp;e)<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;::AfxMessageBox(e.Description()&nbsp;,&nbsp;MB_OK);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;FALSE;<br>&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
三&nbsp; <br>将double类型的时间转换成时间字符串<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">CString&nbsp;strGPSTime;<br>&nbsp;&nbsp;&nbsp;&nbsp;COleDateTime&nbsp;GPStime(GPSDate.gpsTime);<br>&nbsp;&nbsp;&nbsp;&nbsp;strGPSTime&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;GPStime.Format(</span><span style="color: #000000;">"</span><span style="color: #000000;">%Y-%m-%d&nbsp;%H:%M:%S</span><span style="color: #000000;">"</span><span style="color: #000000;">);&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">GPS时间</span></div>
四<br>小技巧 在MFC的编辑框显示信息的时候&nbsp; 我以前一般都是 直接<br>m_strMsg += "提示信息:";<br>这样会出现往下拖&nbsp; 很烦人&nbsp;&nbsp; <br>今天刚想到一个小技巧<br>在插入信息的时候 我们可以插入到头部去&nbsp; 这样就不会滚动 我们看到的就是最新的信息了<br>m_strMsg.Insert(0 , "信息提示:");<br><br>//10.22 新增<br>对话框的巧妙隐藏&nbsp;&nbsp; 不闪屏!<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">隐藏窗口<br></span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;CFlashThiefDlg::OnWindowPosChanging(WINDOWPOS</span><span style="color: #000000;">*</span><span style="color: #000000;">&nbsp;lpwndpos)<br>{<br>&nbsp;&nbsp;&nbsp;&nbsp;lpwndpos</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">flags&nbsp;</span><span style="color: #000000;">&amp;=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">~</span><span style="color: #000000;">SWP_SHOWWINDOW;<br>&nbsp;&nbsp;&nbsp;&nbsp;CDialog::OnWindowPosChanging(lpwndpos);&nbsp;&nbsp;&nbsp;&nbsp;<br>}<br></span></div>
<br>五<br>判断数据库中的一张表是否存在的函数<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008000;">//</span><span style="color: #008000;">判断一张表是否存在</span><span style="color: #008000;"><br></span><span style="color: #000000;">BOOL IsTableExsist(CString&nbsp;strTableName)<br>{<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">try</span><span style="color: #000000;">&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CStringArray&nbsp;arrTableNames;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_RecordsetPtr&nbsp;Recordset&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;m_pConn</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">OpenSchema(adSchemaTables);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_variant_t&nbsp;&nbsp;&nbsp;l_vDBTableName;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_bstr_t&nbsp;&nbsp;&nbsp;bstrTableType;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">while</span><span style="color: #000000;">(</span><span style="color: #000000;">!</span><span style="color: #000000;">Recordset</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">adoEOF)&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;l_vDBTableName&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;Recordset</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">GetCollect(</span><span style="color: #000000;">"</span><span style="color: #000000;">TABLE_NAME</span><span style="color: #000000;">"</span><span style="color: #000000;">);&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bstrTableType&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;Recordset</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">GetCollect(</span><span style="color: #000000;">"</span><span style="color: #000000;">TABLE_TYPE</span><span style="color: #000000;">"</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;((bstrTableType&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;(_bstr_t)</span><span style="color: #000000;">"</span><span style="color: #000000;">TABLE</span><span style="color: #000000;">"</span><span style="color: #000000;">)</span><span style="color: #000000;">||</span><span style="color: #000000;">(bstrTableType&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;(_bstr_t)</span><span style="color: #000000;">"</span><span style="color: #000000;">VIEWS</span><span style="color: #000000;">"</span><span style="color: #000000;">))&nbsp;&nbsp;<br>&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;arrTableNames.Add((</span><span style="color: #0000ff;">char</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">*</span><span style="color: #000000;">)_bstr_t(l_vDBTableName));&nbsp;&nbsp;<br>&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;Recordset</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">MoveNext();&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;iCount&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;arrTableNames.GetSize();&nbsp;&nbsp;&nbsp;<br>&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;;&nbsp;i&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">&nbsp;iCount&nbsp;;&nbsp;i</span><span style="color: #000000;">++</span><span style="color: #000000;">)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CString</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">&nbsp;strName&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;arrTableNames[i];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;(strName&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;strTableName)<br>&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;TRUE;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">catch</span><span style="color: #000000;">(_com_error</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">&nbsp;e)<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ASSERT(FALSE);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CString&nbsp;str;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;str.Format(</span><span style="color: #000000;">"</span><span style="color: #000000;">文件名称:&nbsp;%s&nbsp;\n&nbsp;所在代码行&nbsp;:&nbsp;%d&nbsp;执行SQL语句失败&nbsp;错误原因&nbsp;%s</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;,&nbsp;__FILE__&nbsp;,&nbsp;__LINE__&nbsp;,&nbsp;(LPCSTR)e.Description());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TRACE(str);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AfxMessageBox(str);&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;FALSE;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;FALSE;<br>}</span></div>
<br>以后再继续<br><br>  <img src ="http://www.cppblog.com/lijiakxl/aggbug/95935.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lijiakxl/" target="_blank">李佳</a> 2009-09-11 16:06 <a href="http://www.cppblog.com/lijiakxl/archive/2009/09/11/95935.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>今天学习C#  居然发现C++也有 Region</title><link>http://www.cppblog.com/lijiakxl/archive/2009/09/03/95181.html</link><dc:creator>李佳</dc:creator><author>李佳</author><pubDate>Thu, 03 Sep 2009 04:22:00 GMT</pubDate><guid>http://www.cppblog.com/lijiakxl/archive/2009/09/03/95181.html</guid><wfw:comment>http://www.cppblog.com/lijiakxl/comments/95181.html</wfw:comment><comments>http://www.cppblog.com/lijiakxl/archive/2009/09/03/95181.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.cppblog.com/lijiakxl/comments/commentRss/95181.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lijiakxl/services/trackbacks/95181.html</trackback:ping><description><![CDATA[最近又闲着了...<br>技术人员一闲着就蛋疼...得找点东西学 , 何况我还是一只小菜鸟&nbsp;&nbsp; 今天下了本电子书&nbsp; 看看C#的WinForm 一点一点来<br><br>根据书上的知道&nbsp; 新建了第一个工程&nbsp; 发现了一个C#的关键字Region很有意思&nbsp; 折叠代码用的 而且还能有注释&nbsp;&nbsp; 相当好用&nbsp; 特别是工程大了一点点以后&nbsp; 这个就使得代码更加好看了 新语言就是好... 无奈 C++没有这个关键字&nbsp;&nbsp; 不管有没有&nbsp; 上网搜索一下吧&nbsp;&nbsp; 居然发现MSDN里面有<br><a title="MSDN" href="http://msdn.microsoft.com/en-us/library/b6xkz944%28VS.80%29.aspx">MSDN</a> 这个关键字&nbsp;&nbsp; 吼吼&nbsp; 看了一下&nbsp;
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008000;">//</span><span style="color: #008000;">语法描述</span><span style="color: #008000;"><br></span><span style="color: #000000;">#pragma&nbsp;region&nbsp;name<br>#pragma&nbsp;endregion&nbsp;comment<br></span><span style="color: #008000;">//</span><span style="color: #008000;">END<br><br></span><span style="color: #008000;">//</span><span style="color: #008000;">实例代码</span><span style="color: #008000;"><br></span><span style="color: #000000;">#pragma&nbsp;region&nbsp;Region_1<br></span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;Test()&nbsp;{}<br></span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;Test2()&nbsp;{}<br></span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;Test3()&nbsp;{}<br>#pragma&nbsp;endregion&nbsp;Region_1<br><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;main()&nbsp;{}</span></div>
我拿到工程里面去试了一下&nbsp; 居然没有&nbsp; MSDN骗人??才不会呢&nbsp; 旁边有一个提醒框 <br>
<div>
This page is specific to
</div>
Microsoft Visual Studio 2005/.NET Framework 2.
0<br>呵呵&nbsp; 我用的是VS2003&nbsp;&nbsp; 不过还好机器还装了2008&nbsp; 测试一下&nbsp; 真的可以&nbsp; 哈哈&nbsp; 不错不错&nbsp; <br><br>  <img src ="http://www.cppblog.com/lijiakxl/aggbug/95181.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lijiakxl/" target="_blank">李佳</a> 2009-09-03 12:22 <a href="http://www.cppblog.com/lijiakxl/archive/2009/09/03/95181.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个现代的程序员要学习的东西...真多...</title><link>http://www.cppblog.com/lijiakxl/archive/2009/09/02/95128.html</link><dc:creator>李佳</dc:creator><author>李佳</author><pubDate>Wed, 02 Sep 2009 12:51:00 GMT</pubDate><guid>http://www.cppblog.com/lijiakxl/archive/2009/09/02/95128.html</guid><wfw:comment>http://www.cppblog.com/lijiakxl/comments/95128.html</wfw:comment><comments>http://www.cppblog.com/lijiakxl/archive/2009/09/02/95128.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/lijiakxl/comments/commentRss/95128.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lijiakxl/services/trackbacks/95128.html</trackback:ping><description><![CDATA[头大 越学习&nbsp; 越多新的术语 ...<br><br>列个表单&nbsp; N年后自己再回来看看吧<br><br>XML WinForm .Net 正则表达式 内核编程 ASM 高级应用程序调试&nbsp;&nbsp; 高级内核编程(HOOK 与 反HOOK) <br>还有么???想到了就增加吧...<br><br>新增&nbsp;&nbsp; WPF&nbsp; WDF TDD<br><br>累么??&nbsp;&nbsp; 不累!!<br><br>  <img src ="http://www.cppblog.com/lijiakxl/aggbug/95128.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lijiakxl/" target="_blank">李佳</a> 2009-09-02 20:51 <a href="http://www.cppblog.com/lijiakxl/archive/2009/09/02/95128.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一些自己常用的 需要记录的代码 记录下来</title><link>http://www.cppblog.com/lijiakxl/archive/2009/08/28/94688.html</link><dc:creator>李佳</dc:creator><author>李佳</author><pubDate>Fri, 28 Aug 2009 09:08:00 GMT</pubDate><guid>http://www.cppblog.com/lijiakxl/archive/2009/08/28/94688.html</guid><wfw:comment>http://www.cppblog.com/lijiakxl/comments/94688.html</wfw:comment><comments>http://www.cppblog.com/lijiakxl/archive/2009/08/28/94688.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/lijiakxl/comments/commentRss/94688.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/lijiakxl/services/trackbacks/94688.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008080;">&nbsp;1</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">&nbsp;2</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;CString&nbsp;Fullstring,&nbsp;Appname,&nbsp;Fileext;<br></span><span style="color: #008080;">&nbsp;3</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;Fullstring.LoadString(IDR_MAINFRAME);<br></span><span style="color: #008080;">&nbsp;4</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">获取完整的分割串</span><span style="color: #008000;"><br></span><span style="color: #008080;">&nbsp;5</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;AfxExtractSubString(Appname,&nbsp;Fullstring,&nbsp;</span><span style="color: #000000;">0</span><span style="color: #000000;">,&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">\n</span><span style="color: #000000;">'</span><span style="color: #000000;">);&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="color: #008080;">&nbsp;6</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">析出第一个子串</span><span style="color: #008000;"><br></span><span style="color: #008080;">&nbsp;7</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;AfxExtractSubString(Fileext,&nbsp;Fullstring,&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">,&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">\n</span><span style="color: #000000;">'</span><span style="color: #000000;">);&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="color: #008080;">&nbsp;8</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">析出第四个子串</span><span style="color: #008000;"></span><span style="color: #008080;"></span> <span style="color: #000000;"></span></div>
<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">CString&nbsp;和COleDateTime之间的转换<br>CString&nbsp;&nbsp;&nbsp;str&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">2004-07-08&nbsp;&nbsp;&nbsp;11:22:33</span><span style="color: #000000;">"</span><span style="color: #000000;">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COleVariant&nbsp;&nbsp;&nbsp;VariantTime;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VariantTime&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;str;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VariantTime.ChangeType(VT_DATE);&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COleDateTime&nbsp;&nbsp;&nbsp;DataTime&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;VariantTime;&nbsp;&nbsp;<br></span></div>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><span style="color: #000000;">STR)strHTML,strHTML.GetLength(),</span><span style="color: #008080;">5</span>&nbsp;<span style="color: #000000;">tmp,strHTML.GetLength()</span><span style="color: #000000;">+</span><span style="color: #000000;">1</span><span style="color: #000000;">);<br></span><span style="color: #008080;">6</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;strHTML&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;tmp;<br></span><span style="color: #008080;">7</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;delete&nbsp;tmp;<br></span><span style="color: #008080;">8</span>&nbsp;<span style="color: #000000;"></span></div>
<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">_RecordsetPtr&nbsp;bInDateBase&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;m_pConn</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">Execute((_variant_t)strSQL&nbsp;,&nbsp;</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">index&nbsp;,&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">);<br></span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;(</span><span style="color: #000000;">!</span><span style="color: #000000;">bInDateBase</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">adoEOF)&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">有数据</span><span style="color: #008000;"><br></span><span style="color: #000000;">{<br>}<br></span></div>
<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008080;">1</span>&nbsp;<span style="color: #000000;">_variant_t&nbsp;var;<br></span><span style="color: #008080;">2</span>&nbsp;<span style="color: #000000;">var</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;m_pRecordset</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">GetCollect(</span><span style="color: #000000;">"</span><span style="color: #000000;">posInfo</span><span style="color: #000000;">"</span><span style="color: #000000;">);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">可能为空</span><span style="color: #008000;"><br></span><span style="color: #008080;">3</span>&nbsp;<span style="color: #008000;"></span><span style="color: #0000ff;">if</span><span style="color: #000000;">(var.vt&nbsp;</span><span style="color: #000000;">!=</span><span style="color: #000000;">&nbsp;VT_NULL)&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">为NULL</span><span style="color: #008000;"><br></span><span style="color: #008080;">4</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;strPosInfo&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;var;<br></span><span style="color: #008080;">5</span>&nbsp;<span style="color: #000000;"></span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;<br></span><span style="color: #008080;">6</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;strPosInfo&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&#8220;&#8221;;<br></span><span style="color: #008080;">7</span>&nbsp;<span style="color: #000000;"></span></div>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008080;">&nbsp;1</span>&nbsp;<span style="color: #008000;">//</span><span style="color: #008000;">将字符串数字传换成BCD码</span><span style="color: #008000;"> -- 例如&nbsp; "1234"&nbsp; -&gt;&nbsp; 0x1234<br></span><span style="color: #008080;">&nbsp;2</span>&nbsp;<span style="color: #008000;"></span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;CGPS_Info_Redirect_CZDlg::CStringDataToBCDData(CString&nbsp;strData&nbsp;,&nbsp;BYTE</span><span style="color: #000000;">*</span><span style="color: #000000;">&nbsp;bBCD)<br></span><span style="color: #008080;">&nbsp;3</span>&nbsp;<span style="color: #000000;">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="color: #008080;">&nbsp;4</span>&nbsp;<span style="color: #000000;">&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;;&nbsp;i&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">&nbsp;strData.GetLength()&nbsp;;&nbsp;i</span><span style="color: #000000;">++</span><span style="color: #000000;">)<br></span><span style="color: #008080;">&nbsp;5</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;{<br></span><span style="color: #008080;">&nbsp;6</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ASSERT(strData[i]&nbsp;</span><span style="color: #000000;">&gt;=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">0</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;strData[i]&nbsp;</span><span style="color: #000000;">&lt;=</span><span style="color: #000000;">'</span><span style="color: #000000;">9</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br></span><span style="color: #008080;">&nbsp;7</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;(i&nbsp;</span><span style="color: #000000;">%</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0</span><span style="color: #000000;">)&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">1,3,5,7,9</span><span style="color: #008000;"><br></span><span style="color: #008080;">&nbsp;8</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br></span><span style="color: #008080;">&nbsp;9</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bBCD[i</span><span style="color: #000000;">/</span><span style="color: #000000;">2</span><span style="color: #000000;">]&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">(strData[i]&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0x30</span><span style="color: #000000;">)</span><span style="color: #000000;">&lt;&lt;</span><span style="color: #000000;">4</span><span style="color: #000000;">;</span><span style="color: #008000;">//</span><span style="color: #008000;">左移四位&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #008080;">10</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: #008080;">11</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;"><br></span><span style="color: #008080;">12</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br></span><span style="color: #008080;">13</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bBCD[i</span><span style="color: #000000;">/</span><span style="color: #000000;">2</span><span style="color: #000000;">]&nbsp;</span><span style="color: #000000;">+=</span><span style="color: #000000;">&nbsp;(strData[i]&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0x30</span><span style="color: #000000;">);<br></span><span style="color: #008080;">14</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: #008080;">15</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: #008080;">16</span>&nbsp;<span style="color: #000000;">}</span></div>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #008080;">&nbsp;1</span>&nbsp;<span style="color: #008000;">//</span><span style="color: #008000;">将int类型copy到BYTE数组中</span><span style="color: #008000;"><br></span><span style="color: #008080;">&nbsp;2</span>&nbsp;<span style="color: #008000;"></span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;CGPS_Info_Redirect_CZDlg::CopyIntToByte(BYTE</span><span style="color: #000000;">*</span><span style="color: #000000;">&nbsp;data&nbsp;,&nbsp;</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;iData)<br></span><span style="color: #008080;">&nbsp;3</span>&nbsp;<span style="color: #000000;">{<br></span><span style="color: #008080;">&nbsp;4</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;WORD&nbsp;wHigh&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;HIWORD(iData);<br></span><span style="color: #008080;">&nbsp;5</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;WORD&nbsp;wLow&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;LOWORD(iData);<br></span><span style="color: #008080;">&nbsp;6</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;data[</span><span style="color: #000000;">0</span><span style="color: #000000;">]&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;HIBYTE(wHigh);<br></span><span style="color: #008080;">&nbsp;7</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;data[</span><span style="color: #000000;">1</span><span style="color: #000000;">]&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;LOBYTE(wHigh);<br></span><span style="color: #008080;">&nbsp;8</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;data[</span><span style="color: #000000;">2</span><span style="color: #000000;">]&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;HIBYTE(wLow);<br></span><span style="color: #008080;">&nbsp;9</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;data[</span><span style="color: #000000;">3</span><span style="color: #000000;">]&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;LOBYTE(wLow);<br></span><span style="color: #008080;">10</span>&nbsp;<span style="color: #000000;">}<br></span><span style="color: #008080;">11</span>&nbsp;<span style="color: #000000;"></span></div>
<br>  <img src ="http://www.cppblog.com/lijiakxl/aggbug/94688.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/lijiakxl/" target="_blank">李佳</a> 2009-08-28 17:08 <a href="http://www.cppblog.com/lijiakxl/archive/2009/08/28/94688.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>