﻿<?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>IT博客-我的一片天-随笔分类-Delphi</title><link>http://www.cnitblog.com/xkz/category/7453.html</link><description>我的一片天</description><language>zh-cn</language><lastBuildDate>Mon, 26 Sep 2011 14:55:48 GMT</lastBuildDate><pubDate>Mon, 26 Sep 2011 14:55:48 GMT</pubDate><ttl>60</ttl><item><title>建立带返回值的Server端的ActiveX</title><link>http://www.cnitblog.com/xkz/archive/2011/06/28/74474.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Tue, 28 Jun 2011 14:24:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2011/06/28/74474.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/74474.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2011/06/28/74474.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/74474.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/74474.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 建立带返回值的Server端的ActiveX&nbsp;&nbsp;<a href='http://www.cnitblog.com/xkz/archive/2011/06/28/74474.html'>阅读全文</a><img src ="http://www.cnitblog.com/xkz/aggbug/74474.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2011-06-28 22:24 <a href="http://www.cnitblog.com/xkz/archive/2011/06/28/74474.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>通过文本的方式生成包含多个SHEET的XLS文件</title><link>http://www.cnitblog.com/xkz/archive/2011/06/02/74338.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Thu, 02 Jun 2011 03:52:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2011/06/02/74338.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/74338.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2011/06/02/74338.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/74338.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/74338.html</trackback:ping><description><![CDATA[<div>一切尽在不言中，复制下面的代码放到一个文本文件中，然后把扩展名改成XLS
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">MIME-Version:&nbsp;1.0<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />X-Document-Type:&nbsp;Workbook<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />Content-Type:&nbsp;multipart/related;&nbsp;boundary="***MY_BOUNDARY_LINE***"<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />--***MY_BOUNDARY_LINE***<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />Content-Type:&nbsp;text/html;&nbsp;charset="gbk"<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">html&nbsp;</span><span style="color: #ff0000">xmlns:o</span><span style="color: #0000ff">="urn:schemas-microsoft-com:office:office"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />xmlns:x</span><span style="color: #0000ff">="urn:schemas-microsoft-com:office:excel"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">head</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">xml</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">o:DocumentProperties</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">o:Author</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">Tester</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">o:Author</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">o:LastAuthor</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">XLS&nbsp;Test</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">o:LastAuthor</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">o:Created</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">o:Created</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">o:LastSaved</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">o:LastSaved</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">o:Company</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">XLS&nbsp;Tester</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">o:Company</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">o:Version</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">1.0</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">o:Version</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">o:DocumentProperties</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">xml</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">xml</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ExcelWorkbook</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ExcelWorksheets</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ExcelWorksheet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:Name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">MySheet1</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:Name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:WorksheetSource&nbsp;</span><span style="color: #ff0000">HRef</span><span style="color: #0000ff">="cid:1"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ExcelWorksheet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ExcelWorksheet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:Name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">MySheet2</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:Name</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:WorksheetSource&nbsp;</span><span style="color: #ff0000">HRef</span><span style="color: #0000ff">="cid:2"</span><span style="color: #0000ff">/&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ExcelWorksheet</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ExcelWorksheets</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ExcelWorkbook</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">xml</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">head</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">html</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />--***MY_BOUNDARY_LINE***<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />Content-ID:&nbsp;1<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />Content-Type:&nbsp;text/html;&nbsp;charset="big5"<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">html&nbsp;</span><span style="color: #ff0000">xmlns:o</span><span style="color: #0000ff">="urn:schemas-microsoft-com:office:office"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />xmlns:x</span><span style="color: #0000ff">="urn:schemas-microsoft-com:office:excel"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">head</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">meta&nbsp;</span><span style="color: #ff0000">http-equiv</span><span style="color: #0000ff">="Content-Type"</span><span style="color: #ff0000">&nbsp;content</span><span style="color: #0000ff">="text/html;&nbsp;charset=big5"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">xml</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:WorksheetOptions</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ProtectContents</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">False</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ProtectContents</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ProtectObjects</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">False</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ProtectObjects</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ProtectScenarios</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">False</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ProtectScenarios</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:WorksheetOptions</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">xml</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">head</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">body</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">table&nbsp;</span><span style="color: #ff0000">cellspacing</span><span style="color: #0000ff">="0"</span><span style="color: #ff0000">&nbsp;border</span><span style="color: #0000ff">="1"</span><span style="color: #ff0000">&nbsp;id</span><span style="color: #0000ff">="SheetTable1"</span><span style="color: #ff0000">&nbsp;style</span><span style="color: #0000ff">="border-collapse:collapse;"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">Index</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">BIG5</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">0</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">1</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">3</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">4</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">5</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">6</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">7</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">8</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">9</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;ノめ盞絏恨瞶&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">table</span><span style="color: #0000ff">&gt;&lt;/</span><span style="color: #800000">body</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">html</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />--***MY_BOUNDARY_LINE***<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />Content-ID:&nbsp;2<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />Content-Type:&nbsp;text/html;&nbsp;charset="gbk"<br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">html&nbsp;</span><span style="color: #ff0000">xmlns:o</span><span style="color: #0000ff">="urn:schemas-microsoft-com:office:office"</span><span style="color: #ff0000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />xmlns:x</span><span style="color: #0000ff">="urn:schemas-microsoft-com:office:excel"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">head</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">meta&nbsp;</span><span style="color: #ff0000">http-equiv</span><span style="color: #0000ff">="Content-Type"</span><span style="color: #ff0000">&nbsp;content</span><span style="color: #0000ff">="text/html;&nbsp;charset=gbk"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">xml</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:WorksheetOptions</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ProtectContents</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">False</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ProtectContents</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ProtectObjects</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">False</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ProtectObjects</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">x:ProtectScenarios</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">False</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:ProtectScenarios</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">x:WorksheetOptions</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">xml</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">head</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">body</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;</span><span style="color: #800000">table&nbsp;</span><span style="color: #ff0000">cellspacing</span><span style="color: #0000ff">="0"</span><span style="color: #ff0000">&nbsp;border</span><span style="color: #0000ff">="1"</span><span style="color: #ff0000">&nbsp;id</span><span style="color: #0000ff">="SheetTable2"</span><span style="color: #ff0000">&nbsp;style</span><span style="color: #0000ff">="border-collapse:collapse;"</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">Index</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">BGK</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">0</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">1</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">3</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">4</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">5</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">6</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">7</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">8</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">9</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;&lt;</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000">2011/6/2&nbsp;用户密码管理&nbsp;11:11:11</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">td</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">tr</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">table</span><span style="color: #0000ff">&gt;&lt;/</span><span style="color: #800000">body</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">&lt;/</span><span style="color: #800000">html</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cnitblog.com/images/OutliningIndicators/None.gif"  alt="" />--***MY_BOUNDARY_LINE***--</span></div></div>
<div></div><img src ="http://www.cnitblog.com/xkz/aggbug/74338.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2011-06-02 11:52 <a href="http://www.cnitblog.com/xkz/archive/2011/06/02/74338.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>另类的生成简单Excel格式文件XLS</title><link>http://www.cnitblog.com/xkz/archive/2011/05/26/74075.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Thu, 26 May 2011 01:44:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2011/05/26/74075.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/74075.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2011/05/26/74075.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/74075.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/74075.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 直接生成HTML文件，用TABLE,TR,TD标签作为列,最后把文件扩展名存成XLS，直接点击就可以在装了EXCEL的系统下打开。<br>这种方式生成的文件也支持公式的使用。跟在EXCEL的用法一样。<br>&nbsp;&nbsp;<a href='http://www.cnitblog.com/xkz/archive/2011/05/26/74075.html'>阅读全文</a><img src ="http://www.cnitblog.com/xkz/aggbug/74075.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2011-05-26 09:44 <a href="http://www.cnitblog.com/xkz/archive/2011/05/26/74075.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[原创]TRect框选的范围</title><link>http://www.cnitblog.com/xkz/archive/2009/11/29/62897.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Sun, 29 Nov 2009 12:16:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2009/11/29/62897.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/62897.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2009/11/29/62897.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/62897.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/62897.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: TRect(x1,y1,x2,y2)所框选的范围<br><br>宽度w=x2-x1<br><br>高度h=y2-y1<br><br><br><br>在范围内最右的X坐标值=x1+宽度w-1=x2-1<br><br>在范围内做下的Y坐标值=y1+宽度w-1=y2-1<br><br><br><br>因此范围值中的x2和y2所在的区域是不属于框选的范围内的。<br><br><br><br>比如 (1,1) ~ (100,80) 的Rect范围,框选的范围为 x=1~99,y=1~79<br>&nbsp;&nbsp;<a href='http://www.cnitblog.com/xkz/archive/2009/11/29/62897.html'>阅读全文</a><img src ="http://www.cnitblog.com/xkz/aggbug/62897.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2009-11-29 20:16 <a href="http://www.cnitblog.com/xkz/archive/2009/11/29/62897.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>DELPHI中通过TStream来对二进制串进行保存或更新到数据库</title><link>http://www.cnitblog.com/xkz/archive/2009/10/26/62119.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Sun, 25 Oct 2009 17:58:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2009/10/26/62119.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/62119.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2009/10/26/62119.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/62119.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/62119.html</trackback:ping><description><![CDATA[<p>增加:<br>&nbsp;&nbsp;Query.Close;&nbsp;&nbsp; <br>&nbsp; Query.SQL.Clear;&nbsp;&nbsp; <br>&nbsp; Query.SQL.Add('INSERT&nbsp;&nbsp; INTO&nbsp;&nbsp; myimages(FileName,pic)&nbsp;&nbsp; VALUE(''Image1'',:pic)');&nbsp;&nbsp; <br>&nbsp; Query.ParamByName('pic').LoadFromFile('D:\Hasd.bmp',ftBlob);&nbsp;&nbsp; <br>&nbsp; Query.ExecSQL;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp; 　&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; <br>&nbsp; 修改:&nbsp;<br>&nbsp; Query.Close;&nbsp;&nbsp; <br>&nbsp; Query.SQL.Clear;&nbsp;&nbsp; <br>&nbsp; Query.SQL.Add('UPDATE&nbsp;&nbsp; myimages&nbsp;&nbsp; SET&nbsp;&nbsp; pic=:pic&nbsp;&nbsp; WHERE&nbsp;&nbsp; filename=''Image1''');&nbsp;&nbsp; <br>&nbsp; Query.ParamByName('pic').LoadFromFile('D:\Hasd2.bmp',ftBlob);&nbsp;&nbsp; <br>&nbsp; Query.ExecSQL </p>
<p>&nbsp;</p>
<p>存储过程:</p>
<p>&nbsp; stm:=TMemoryStream.Create;<br>&nbsp; stm.write(buf^,c); //buf:pbyte<br>&nbsp;&nbsp; freeMem(buf,c);</p>
<p>&nbsp; Ado1.ProcedureName:='UPDATE_USER';<br>&nbsp; Ado1.Parameters.Clear;<br>&nbsp; ado1.Parameters.refresh;&nbsp; //这句会自动获取存储过程的所有参数<br>&nbsp; ado1.Parameters[1].Value:='test';<br>&nbsp; ado1.Parameters[2].LoadFromStream(stm,ftBytes&nbsp;);<br>&nbsp; ado1.ExecProc;</p>
<img src ="http://www.cnitblog.com/xkz/aggbug/62119.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2009-10-26 01:58 <a href="http://www.cnitblog.com/xkz/archive/2009/10/26/62119.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转载]Windows自启动程序十大藏身之处</title><link>http://www.cnitblog.com/xkz/archive/2009/10/16/61967.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Fri, 16 Oct 2009 08:31:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2009/10/16/61967.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/61967.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2009/10/16/61967.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/61967.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/61967.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<p>Windows自启动程序十大藏身之处 </p>
<p>&nbsp;</p>
<p>一、当前用户专有的启动文件夹 </p>
<p>这是许多应用软件自动启动的常用位置，Windows自动启动放入该文件夹的所有快捷方式。用户启动文件夹一般在：\Documents and Settings\\「开始」菜单\程序\启动，其中&#8220;&#8221;是当前登录的用户帐户名称。 </p>
<p>二、对所有用户有效的启动文件夹 </p>
<p>这是寻找自动启动程序的第二个重要位置，不管用户用什么身份登录系统，放入该文件夹的快捷方式总是自动启动——这是它与用户专有的启动文件夹的区别所在。该文件夹一般在：\Documents and Settings\All Users\「开始」菜单\程序\启动。 </p>
<p>三、Load注册键 </p>
<p>介绍该注册键的资料不多，实际上它也能够自动启动程序。位置：HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\ CurrentVersion\Windows\load。 </p>
<p>四、Userinit注册键 </p>
<p>位置：HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\Userinit。这里也能够使系统启动时自动初始化程序。通常该注册键下面有一个userinit.exe，但这个键允许指定用逗号分隔的多个程序，例如&#8220;userinit.exe,OSA.exe&#8221;（不含引号）。 </p>
<p>五、Explorer\Run注册键 </p>
<p>和load、Userinit不同，Explorer\Run键在HKEY_CURRENT_USER和HKEY_LOCAL_MACHINE下都有，具体位置是：HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run，和HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run。 </p>
<p>六、RunServicesOnce注册键 </p>
<p>RunServicesOnce注册键用来启动服务程序，启动时间在用户登录之前，而且先于其他通过注册键启动的程序。RunServicesOnce注册键的位置是：HKEY_CURRENT_USER\Software\Microsoft\Windows\ CurrentVersion\RunServicesOnce，和HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce。 </p>
<p>七、RunServices注册键 </p>
<p>RunServices注册键指定的程序紧接RunServicesOnce指定的程序之后运行，但两者都在用户登录之前。RunServices的位置是：HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices，和HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\RunServices。 </p>
<p>八、RunOnce\Setup注册键 </p>
<p>RunOnce\Setup指定了用户登录之后运行的程序，它的位置是：HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ RunOnce\Setup，和HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\Setup。 </p>
<p>九、RunOnce注册键 </p>
<p>安装程序通常用RunOnce键自动运行程序，它的位置：HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce和HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce。 </p>
<p>HKEY_LOCAL_MACHINE下面的RunOnce键会在用户登录之后立即运行程序，运行时机在其他Run键指定的程序之前。HKEY_CURRENT_USER下面的RunOnce键在操作系统处理其他Run键以及&#8220;启动&#8221;文件夹的内容之后运行。如果是XP，你还需要检查一下HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\RunOnceEx。 </p>
<p>十、Run注册键 </p>
<p>Run是自动运行程序最常用的注册键，位置在：HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run，和HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run。 </p>
<p>HKEY_CURRENT_USER下面的Run键紧接HKEY_LOCAL_MACHINE下面的Run键运行，但两者都在处理&#8220;启动&#8221;文件夹之前。</p>
<img src ="http://www.cnitblog.com/xkz/aggbug/61967.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2009-10-16 16:31 <a href="http://www.cnitblog.com/xkz/archive/2009/10/16/61967.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ICS中TWSocketServer的使用步骤</title><link>http://www.cnitblog.com/xkz/archive/2009/10/07/61713.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Wed, 07 Oct 2009 14:40:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2009/10/07/61713.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/61713.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2009/10/07/61713.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/61713.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/61713.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1.设置TWSocketServer的port作为监听端口.<br><br>2.对于来自客户端的连接,必须先对TWSocketClient进行继承。<br><br>  TTcpSrvClient = class(TWSocketClient)<br>  public<br>      //自定义的属性<br><br> end;<br><br>3.设置TWSocketServer的部分属性<br><br>.Port:=inttostr(usePort);  //动态指定,来自www.cnitblog.com/xkz<br> .Banner:='';       //清除客户端连接后的自动信息<br> .BannerTooBusy:='';<br> .ClientClass:= TTcpSrvClient; //指定继承后的类，当客户端连入时,自动创建及释放<br><br>4.在ClientConnect(Sender: TObject; Client: TWSocketClient;<br>  Error: Word)事件中,设置客户端有数据&nbsp;&nbsp;<a href='http://www.cnitblog.com/xkz/archive/2009/10/07/61713.html'>阅读全文</a><img src ="http://www.cnitblog.com/xkz/aggbug/61713.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2009-10-07 22:40 <a href="http://www.cnitblog.com/xkz/archive/2009/10/07/61713.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>TServerSocket在阻塞模式下的多线程</title><link>http://www.cnitblog.com/xkz/archive/2009/09/18/61473.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Fri, 18 Sep 2009 08:46:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2009/09/18/61473.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/61473.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2009/09/18/61473.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/61473.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/61473.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在服务器端，Delphi将自动为每一个阻塞方式的连接分配一个新的线程，并通过TServerClientThread来操纵每一个线程。所以不能通过对象库中的向导来创建线程对象，只能手工建立一个TServerClientThread的派生类，然后重载ClientExcute方法。Procedure TServerThread.ClientExcute;&nbsp;&nbsp;<a href='http://www.cnitblog.com/xkz/archive/2009/09/18/61473.html'>阅读全文</a><img src ="http://www.cnitblog.com/xkz/aggbug/61473.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2009-09-18 16:46 <a href="http://www.cnitblog.com/xkz/archive/2009/09/18/61473.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转载]Delphi 操作 DTS</title><link>http://www.cnitblog.com/xkz/archive/2009/07/30/60461.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Thu, 30 Jul 2009 08:00:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2009/07/30/60461.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/60461.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2009/07/30/60461.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/60461.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/60461.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: DTS是SQL Server中用于完成一系列数据调度的工具，由于它的特殊性，在程序中操作DTS包是件麻烦的事情。<br>但是微软还算很厚道，留了一个接口，让用户在自己开发的程序中，可以无障碍的使用DTS包。本文讲述的就是如何在Delphi中操作DTS包。<br><br>&nbsp;&nbsp;<a href='http://www.cnitblog.com/xkz/archive/2009/07/30/60461.html'>阅读全文</a><img src ="http://www.cnitblog.com/xkz/aggbug/60461.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2009-07-30 16:00 <a href="http://www.cnitblog.com/xkz/archive/2009/07/30/60461.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Indy10中IdMappedPortTCP的用法</title><link>http://www.cnitblog.com/xkz/archive/2009/04/17/56430.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Thu, 16 Apr 2009 16:03:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2009/04/17/56430.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/56430.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2009/04/17/56430.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/56430.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/56430.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Indy10把参数由AThread换成AContext后，用法已经不同.<br><br>OnConnect中获取来源IP<br>AContext.Connection.Socket.Binding.PeerIP;<br><br>OnExecute中处理客户端来的数据<br>Var<br>aThread:TIdMappedPortContext;<br>s:string;<br>begin<br>   aThread:=TIdMappedPortContext(aContext);<br>   s:=aThread.netdata;<br>  //.....(处理过程)<br><br>end;<br><br>OnOutboundData中处理服务端过来的数据<br>Var<br> aThread:TIdMappedPortContext;<br> s:string;<br>begin<br>  aThread:=TIdMappedPortContext(aContext);<br>  s:=aThread.netdata;<br>  //..&nbsp;&nbsp;<a href='http://www.cnitblog.com/xkz/archive/2009/04/17/56430.html'>阅读全文</a><img src ="http://www.cnitblog.com/xkz/aggbug/56430.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2009-04-17 00:03 <a href="http://www.cnitblog.com/xkz/archive/2009/04/17/56430.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Delphi中用临界区线程同步</title><link>http://www.cnitblog.com/xkz/archive/2008/08/23/48297.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Sat, 23 Aug 2008 14:28:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2008/08/23/48297.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/48297.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2008/08/23/48297.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/48297.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/48297.html</trackback:ping><description><![CDATA[Delphi中用临界区线程同步<br>多线程程序中，如果各个线程要访问同一个资源，如同一个变量<br>这时就要使用线程同步技术，才不会使线程之间产生冲突和干扰<br>线程同步有多种办法，使用临界区是其中最简单，也是效率最高的办法(CPU占用时间最少)<br>使用临界区代码如下：<br>先声明一个TRTLCriticalSection类型的全局变量<br>var<br>&nbsp; MyCs: TRTLCriticalSection;<br>在程序开始或建立线程之前，初始化<br>&nbsp; InitializeCriticalSection(MyCs);//初始化临界区<br>在程序结束或所有线程结束后，删除它<br>&nbsp; DeleteCriticalSection(MyCs);//删除临界界<br>再在线程中要同步的地方加入<br>&nbsp;&nbsp;&nbsp; EnterCriticalSection(MyCs); //进入临界区<br>&nbsp;&nbsp;&nbsp; try<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //程序代码<br>&nbsp;&nbsp;&nbsp; finally<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LeaveCriticalSection(MyCs); //离开临界区<br>&nbsp;&nbsp;&nbsp; end; 
<img src ="http://www.cnitblog.com/xkz/aggbug/48297.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2008-08-23 22:28 <a href="http://www.cnitblog.com/xkz/archive/2008/08/23/48297.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>DELPHI中类之间的嵌套定义</title><link>http://www.cnitblog.com/xkz/archive/2008/08/18/48133.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Mon, 18 Aug 2008 10:27:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2008/08/18/48133.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/48133.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2008/08/18/48133.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/48133.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/48133.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<p>由于DELPHI不允许unit单元的循环引用,而类的成员在定义时，必须要用interface里的类型,因此要实现类成员的互相引用,必须用变通的方法.</p>
<p>&nbsp;</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">unit1<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>interface<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>uses<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;</span><span style="COLOR: #000000"><img src="http://www.cnitblog.com/Images/dot.gif">,</span><span style="COLOR: #000000">unit2</span><span style="COLOR: #000000">,<img src="http://www.cnitblog.com/Images/dot.gif"></span><span style="COLOR: #000000">;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>type<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;tA</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">class<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;private<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;bbb</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">tB;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<p>&nbsp;</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">unit2<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>interface<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>uses<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">unit1</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>type<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;tB</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">class<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;private<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;aaa</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">tA;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<p>上面的2个unit不能通过编译,因为循环引用了.如果不循环引用，又出现类型没定义。反正就是不能通过编译。</p>
<p>有人说尽量避免类的这种互相定义，实在要定义时就把这2个类放在一个unit中。但是这样并不符合我们的设想。</p>
<p>在什么情况下需要这种互相定义呢，我们假设一个老师只有1个学生，一个学生只有1个老师，那么一个学生，那他就有老师，因此他有一个成员变量，指向他的老师的。而这个老师也会有1个成员变量指向他的学生。这时就发生了嵌套定义。</p>
<p>由于unit不能循环引用的限制,实现这种嵌套好像只能放到一个unit中了,但是我们有不在一个unit的需要。那要如何实现呢。</p>
<p>我们知道在implementation中uses的unit不会发生循环引用,而类的实现部分(定义部分是在interface)恰好是在implementation,在implementation里uses的类型可以在implementation范围内引用。因此我们是可以在类方法的实现部分使用到另外一个类。但是在类的方法中定义的变量是局部的，一退出过程就消失了，不能随时引用。</p>
<p>我们知道对象实质是一个dword型的指针.只要我们传递另外一个类的指针保存起来，在要调用另外一个类的方法时再强制转换后使用。</p>
<p>具体测试在下面的2个unit中</p>
<p>&nbsp;</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">unit&nbsp;Unit1;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>interface<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>uses<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;Windows</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Messages</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;SysUtils</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Variants</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Classes</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Graphics</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Controls</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Forms</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;Dialogs</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;StdCtrls;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>type<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;TA</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">class<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;private<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;Private&nbsp;declarations&nbsp;}<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">//</span><span style="COLOR: #000000">tb</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">pinteger;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;public<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;classB</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">pdword;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;setTB(p</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">pinteger);<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;doTest;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;TForm1&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;class(TForm)<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Button1</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">&nbsp;TButton;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;Button1Click(Sender</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">&nbsp;TObject);<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;private<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;Private&nbsp;declarations&nbsp;}<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;public<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;Public&nbsp;declarations&nbsp;}<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>var<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;Form1</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">&nbsp;TForm1;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>implementation<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>uses<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;unit2;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>{</span><span style="COLOR: #800080">$R</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">*.</span><span style="COLOR: #000000">dfm}<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>var<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;aa</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">tA;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;bb</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">tB;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>procedure&nbsp;TForm1</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">Button1Click(Sender</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">&nbsp;TObject);<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>var<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;b</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">tB;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>begin<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;aa</span><span style="COLOR: #000000">:=</span><span style="COLOR: #000000">tA</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">Create;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;bb</span><span style="COLOR: #000000">:=</span><span style="COLOR: #000000">tb</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">Create;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;aa</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">classB</span><span style="COLOR: #000000">:=</span><span style="COLOR: #800080">@bb</span><span style="COLOR: #000000">;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;bb</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">classA</span><span style="COLOR: #000000">:=</span><span style="COLOR: #800080">@aa</span><span style="COLOR: #000000">;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;b</span><span style="COLOR: #000000">:=</span><span style="COLOR: #000000">tB(aa</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">classB);<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;b</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">doTest;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>{&nbsp;TA&nbsp;}<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>procedure&nbsp;TA</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">doTest;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>begin<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;showmessage(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">AAA</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>end</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000"><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">unit&nbsp;Unit2;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>interface<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>uses<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;Windows</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Messages</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;SysUtils</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Variants</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Classes</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Graphics</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Controls</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;Forms</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;Dialogs</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;StdCtrls;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>type<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;tB</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">class<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;private<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;Private&nbsp;declarations&nbsp;}<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">//</span><span style="COLOR: #000000">ta</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">pinteger;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;public<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;classA</span><span style="COLOR: #000000">:</span><span style="COLOR: #000000">pdword;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;doTest;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>implementation<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>uses<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;unit1;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>{&nbsp;tB&nbsp;}<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>procedure&nbsp;tB</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">doTest;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>begin<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;showmessage(</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="FONT-WEIGHT: bold; COLOR: #000000">BBB</span><span style="FONT-WEIGHT: bold; COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>end;<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>end</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000"><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<img src ="http://www.cnitblog.com/xkz/aggbug/48133.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2008-08-18 18:27 <a href="http://www.cnitblog.com/xkz/archive/2008/08/18/48133.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>DELPHI中FOR循环在编译的优化处理时产生的问题</title><link>http://www.cnitblog.com/xkz/archive/2008/08/18/48129.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Mon, 18 Aug 2008 08:17:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2008/08/18/48129.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/48129.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2008/08/18/48129.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/48129.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/48129.html</trackback:ping><description><![CDATA[<p><br>var<br>&nbsp;i:integer;<br>begin<br>&nbsp; for i:=0 to 10 do<br>&nbsp;&nbsp;begin<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ary[i]:=0;<br>&nbsp; end;<br>end;<br><br>貌似简单的一段代码,却不简单。调试时，发现i居然是从11开始的，但是如果多声明一个j变量,变成<br>&nbsp; for i:=0 to 10 do<br>&nbsp;&nbsp;begin<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; j:=i;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ary[i]:=0;<br>&nbsp; end;<br><br>在这里j 完全没用,但是调试的时候却能使i正确地等于0.开始以为是程序哪里的内存操作过界造成的，但是即使是一个很简单的程序也是这样，折腾了半天不得其解。<br><br><br>通过搜索，才知道这个DELPHI的优化处理造成的,只要在 Project-&gt;options-&gt;compile中把Optimization项的沟去掉就一切都正常了。</p>
<img src ="http://www.cnitblog.com/xkz/aggbug/48129.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2008-08-18 16:17 <a href="http://www.cnitblog.com/xkz/archive/2008/08/18/48129.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Delphi的clientSocket的Socket.SendBuf</title><link>http://www.cnitblog.com/xkz/archive/2008/07/19/46932.html</link><dc:creator>xyz</dc:creator><author>xyz</author><pubDate>Sat, 19 Jul 2008 13:49:00 GMT</pubDate><guid>http://www.cnitblog.com/xkz/archive/2008/07/19/46932.html</guid><wfw:comment>http://www.cnitblog.com/xkz/comments/46932.html</wfw:comment><comments>http://www.cnitblog.com/xkz/archive/2008/07/19/46932.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/xkz/comments/commentRss/46932.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/xkz/services/trackbacks/46932.html</trackback:ping><description><![CDATA[<p>最近在编写一个游戏的脱机客户端，发现使用Socket.SendBuf发送时，总是会出现部分内容发送不出去。</p>
<p>通过搜索，终于找到原因所在。</p>
<p>原来在调用Socket.SendBuf(buf,count)后，立即freeMem(buf),造成socket还没来得及把buf发送完，就被free掉了。</p>
<p>因此把要发送的buf定义成全局变量，再程序开始创建，并在程序结束后释放。</p>
<img src ="http://www.cnitblog.com/xkz/aggbug/46932.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/xkz/" target="_blank">xyz</a> 2008-07-19 21:49 <a href="http://www.cnitblog.com/xkz/archive/2008/07/19/46932.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>