﻿<?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++博客-brent's hut-随笔分类-Web</title><link>http://www.cppblog.com/aqazero/category/2884.html</link><description /><language>zh-cn</language><lastBuildDate>Thu, 07 Jan 2021 20:12:20 GMT</lastBuildDate><pubDate>Thu, 07 Jan 2021 20:12:20 GMT</pubDate><ttl>60</ttl><item><title>Game of life WASM</title><link>http://www.cppblog.com/aqazero/archive/2021/01/08/217562.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Thu, 07 Jan 2021 17:59:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2021/01/08/217562.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/217562.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2021/01/08/217562.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/217562.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/217562.html</trackback:ping><description><![CDATA[<div>有人用web assembly写了一版game of lie，<br />网站: https://playgameoflife.com/<br />代码: https://github.com/edwinm/game-of-life<br />用c语言暴力运算，没有任何优化，所以虽然用了wasm，速度相当不行。<br /><br />真正的大牛还是Alan Hensel：<br /><div>http://www.cppblog.com/aqazero/archive/2005/07/22/14207.html<br /><br />可惜现在要运行java applet没那么容易<br /><br /><br /><br /><div>https://madewithwebassembly.com/<br /><br />web&nbsp;assembly的网站列表。<br /><br />其中列出来的一些知名项目：<br />Google&nbsp;的tensorflow&nbsp;js, Google&nbsp;Earth,&nbsp;SketchUp<br />AutoCAD&nbsp;的&nbsp;web&nbsp;app<br />Unity&nbsp;3d&nbsp;游戏引擎<br />Doom3&nbsp;demo，烧显卡3d游戏<br />Microsoft&nbsp;的blazor也在其中<br />还有一个不知名，但有趣的game&nbsp;of&nbsp;life游戏(虽然用了c语言写wasm，但算法毫无优化)<br />嗯，居然还有Diablo I<br /><br />可以通过关键字搜索</div></div></div><img src ="http://www.cppblog.com/aqazero/aggbug/217562.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2021-01-08 01:59 <a href="http://www.cppblog.com/aqazero/archive/2021/01/08/217562.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Visual Studio + IIS Express debug problem.</title><link>http://www.cppblog.com/aqazero/archive/2020/02/12/217123.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Wed, 12 Feb 2020 00:35:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2020/02/12/217123.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/217123.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2020/02/12/217123.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/217123.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/217123.html</trackback:ping><description><![CDATA[Created a simple MVC project in VS 2019, when I clicked debug, it either popped up a "process&nbsp;with&nbsp;and&nbsp;Id&nbsp;of&nbsp; &nbsp;is&nbsp;not&nbsp;running" message box or show ERR_CONNECTION_RESET error in the browser.<br /><br />unstalling/reinstalling IIS express, deleting IIS configuration files, deleting the hidden .vs folder under the project, none of this worked.<br /><br />I started IIS Express in CMD, it showed the message : Unable to launch the IIS Express Web server. The format of the specified network name is invalid - 0x800704BE<br /><br />Found this link&nbsp;<a href="http://habjan.blogspot.com/2014/02/visual-studio-2013-unable-to-launch-iis.html">http://habjan.blogspot.com/2014/02/visual-studio-2013-unable-to-launch-iis.html</a>&nbsp;and followed the instuctions:<br /><br /><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em><strong>1.</strong>&nbsp;check the IP address bindings by&nbsp;opening&nbsp;command prompt in admin mode and running this command:</em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em><br /></em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="color: blue; font-family: &quot;Courier New&quot;, Courier, monospace;"><strong><em>netsh http show iplisten</em></strong></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em><br /></em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em>this showed me that the service is listening only 192.168.1.3.</em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em><br /></em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em><strong>2.</strong>&nbsp;then I went to delete this binding by running this command:</em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em><br /></em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="color: blue; font-family: &quot;Courier New&quot;, Courier, monospace;"><strong><em>netsh http delete iplisten ipaddress=192.168.1.3.</em></strong></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em><br /></em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><span style="font-family: Verdana, sans-serif;"><em><strong>3.</strong>&nbsp;and set the service up to listen to all IP addresses by running this command:</em></span></div><div style="margin: 0px; outline: none; color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif; text-align: justify; background-color: #ffffff;"><em><br /></em></div><div style="margin: 0px; outline: none; text-align: justify; background-color: #ffffff;"><strong style="color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif;"><span style="color: blue; font-family: &quot;Courier New&quot;, Courier, monospace;"><em>netsh http add iplisten ipaddress=0.0.0.0<br /><br /></em></span></strong><span style="color: #000000; font-family: verdana, &quot;courier new&quot;; text-align: start;">And then followed this link&nbsp;</span><a href="https://stackoverflow.com/questions/20036984/how-do-i-restore-a-missing-iis-express-ssl-certificate" style="color: #333333; font-family: &quot;Helvetica Neue Light&quot;, HelveticaNeue-Light, &quot;Helvetica Neue&quot;, Helvetica, Arial, sans-serif;">https://stackoverflow.com/questions/20036984/how-do-i-restore-a-missing-iis-express-ssl-certificate<br /><br /></a><em>cd C:\Program Files (x86)\IIS Express IisExpress<br /><br /></em></div><div><em>AdminCmd.exe setupsslUrl -url:https://localhost:44387/ -UseSelfSigned</em><br /><br />It works now, great job for creating the mazes, Microsoft.</div><br /><br /><br /><img src ="http://www.cppblog.com/aqazero/aggbug/217123.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2020-02-12 08:35 <a href="http://www.cppblog.com/aqazero/archive/2020/02/12/217123.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>simulate OnIdle in MFC ActiveX control</title><link>http://www.cppblog.com/aqazero/archive/2010/04/15/112672.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Thu, 15 Apr 2010 07:49:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2010/04/15/112672.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/112672.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2010/04/15/112672.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/112672.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/112672.html</trackback:ping><description><![CDATA[There are two ways to do this, one is simple, another is complicated but more powerful.<br><br>Method A:<br>
<div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">::SetWindowsHookEx(WH_FOREGROUNDIDLE, YourIdleProc,&nbsp;AfxGetInstanceHandle(),&nbsp;GetCurrentThreadId());</span></div>
<br>Method B (my way):<br>
<div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; 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: #0000ff;">static</span><span style="color: #000000;">&nbsp;HHOOK&nbsp;s_hGetMsgHook&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;NULL;<br></span><span style="color: #008080;">&nbsp;2</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">&nbsp;3</span>&nbsp;<span style="color: #000000;">LRESULT&nbsp;FAR&nbsp;PASCAL&nbsp;GetMsgProc(</span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;nCode,&nbsp;WPARAM&nbsp;wParam,&nbsp;LPARAM&nbsp;lParam)<br></span><span style="color: #008080;">&nbsp;4</span>&nbsp;<span style="color: #000000;">{<br></span><span style="color: #008080;">&nbsp;5</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;AFX_MANAGE_STATE(AfxGetStaticModuleState(&nbsp;));<br></span><span style="color: #008080;">&nbsp;6</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">&nbsp;7</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;LPMSG&nbsp;lpMsg&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;(LPMSG)&nbsp;lParam;<br></span><span style="color: #008080;">&nbsp;8</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(&nbsp;(nCode&nbsp;</span><span style="color: #000000;">&gt;=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0</span><span style="color: #000000;">)&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;PM_REMOVE&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;wParam)<br></span><span style="color: #008080;">&nbsp;9</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;{<br></span><span style="color: #008080;">10</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">your&nbsp;code&nbsp;here.&nbsp;maybe&nbsp;to&nbsp;deal&nbsp;with&nbsp;hot-keys,&nbsp;accelerators ...<br></span><span style="color: #008080;">11</span>&nbsp;<span style="color: #008000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">see&nbsp;</span><span style="color: #008000; text-decoration: underline;">http://support.microsoft.com/kb/187988</span><span style="color: #008000;"><br></span><span style="color: #008080;">12</span>&nbsp;<span style="color: #008000;"><br></span><span style="color: #008080;">13</span>&nbsp;<span style="color: #008000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">my&nbsp;code&nbsp;to&nbsp;simulate&nbsp;OnIdle</span><span style="color: #008000;"><br></span><span style="color: #008080;">14</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">static</span><span style="color: #000000;">&nbsp;BOOL&nbsp;bIdle&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;FALSE;<br></span><span style="color: #008080;">15</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CWinApp</span><span style="color: #000000;">*</span><span style="color: #000000;">&nbsp;pApp&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;AfxGetApp();<br></span><span style="color: #008080;">16</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;">(</span><span style="color: #000000;">!</span><span style="color: #000000;">bIdle&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;pApp</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">IsIdleMessage(lpMsg))<br></span><span style="color: #008080;">17</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bIdle&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;TRUE;<br></span><span style="color: #008080;">18</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="color: #008080;">19</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;">(bIdle)<br></span><span style="color: #008080;">20</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br></span><span style="color: #008080;">21</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MSG&nbsp;msgPeek&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;{</span><span style="color: #000000;">0</span><span style="color: #000000;">};<br></span><span style="color: #008080;">22</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #000000;">!</span><span style="color: #000000;">::PeekMessage(</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">msgPeek,&nbsp;NULL,&nbsp;NULL,&nbsp;NULL,&nbsp;PM_NOREMOVE))<br></span><span style="color: #008080;">23</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br></span><span style="color: #008080;">24</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VERIFY(PostMessage(AfxGetMainWnd()</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">GetSafeHwnd(),&nbsp;WM_USER</span><span style="color: #000000;">+</span><span style="color: #000000;">0x12</span><span style="color: #000000;">,&nbsp;</span><span style="color: #000000;">0x34</span><span style="color: #000000;">,&nbsp;</span><span style="color: #000000;">0x56</span><span style="color: #000000;">));<br></span><span style="color: #008080;">25</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: #008080;">26</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: #008080;">27</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">28</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;">(lpMsg</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">hwnd&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;AfxGetMainWnd()</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">GetSafeHwnd()&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;"><br></span><span style="color: #008080;">29</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lpMsg</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">message&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;WM_USER</span><span style="color: #000000;">+</span><span style="color: #000000;">0x12</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;lpMsg</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">wParam&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0x34</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;lpMsg</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">lParam&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0x56</span><span style="color: #000000;">)<br></span><span style="color: #008080;">30</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br></span><span style="color: #008080;">31</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lpMsg</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">message&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;WM_NULL;<br></span><span style="color: #008080;">32</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lpMsg</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">lParam&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0L</span><span style="color: #000000;">;<br></span><span style="color: #008080;">33</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lpMsg</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">wParam&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0L</span><span style="color: #000000;">;<br></span><span style="color: #008080;">34</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">35</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pApp</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">OnIdle(</span><span style="color: #000000;">0</span><span style="color: #000000;">);<br></span><span style="color: #008080;">36</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bIdle&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;FALSE;<br></span><span style="color: #008080;">37</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: #008080;">38</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;}<br></span><span style="color: #008080;">39</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">40</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;::CallNextHookEx(s_hGetMsgHook,&nbsp;nCode,&nbsp;wParam,&nbsp;lParam);<br></span><span style="color: #008080;">41</span>&nbsp;<span style="color: #000000;">}<br></span><span style="color: #008080;">42</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">43</span>&nbsp;<span style="color: #000000;"></span><span style="color: #0000ff;">int</span><span style="color: #000000;">&nbsp;CYourOleControl::OnCreate(LPCREATESTRUCT&nbsp;lpCreateStruct)&nbsp;<br></span><span style="color: #008080;">44</span>&nbsp;<span style="color: #000000;">{<br></span><span style="color: #008080;">45</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;">46</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="color: #008080;">47</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(NULL&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;s_hGetMsgHook)<br></span><span style="color: #008080;">48</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s_hGetMsgHook&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;::SetWindowsHookEx(WH_GETMESSAGE,&nbsp;GetMsgProc,&nbsp;AfxGetInstanceHandle(),&nbsp;GetCurrentThreadId());<br></span><span style="color: #008080;">49</span>&nbsp;<span style="color: #000000;">}<br></span><span style="color: #008080;">50</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">51</span>&nbsp;<span style="color: #000000;"></span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;CYourOleControl::OnDestroy()&nbsp;<br></span><span style="color: #008080;">52</span>&nbsp;<span style="color: #000000;">{<br></span><span style="color: #008080;">53</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;">54</span>&nbsp;<span style="color: #008000;"></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="color: #008080;">55</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;::UnhookWindowsHookEx(s_hGetMsgHook);<br></span><span style="color: #008080;">56</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;s_hGetMsgHook&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;NULL;<br></span><span style="color: #008080;">57</span>&nbsp;<span style="color: #000000;"><br></span><span style="color: #008080;">58</span>&nbsp;<span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;COleControl::OnDestroy();<br></span><span style="color: #008080;">59</span>&nbsp;<span style="color: #000000;">}</span></div>
<br>Method A is far more simple, but with Method B:<br><br>1) You can override CWinApp::IsIdleMessage to filter some special messages, such as a frequent timer which will not affect what you want to do in CWinApp::OnIdle. Because timer will affect message queue and if you don't filter it, OnIdle will be called every time after the timer is invoked.<br><br>2) Sometimes your action in OnIdle will affect message queue inevitably, thus you will get a infinite loop: OnIdle-&gt;the special messages in message queue-&gt;OnIdle-&gt;... But with Method B, with SPY++ you can find the special messages, and filter them in IsIdleMessage.<br>   <img src ="http://www.cppblog.com/aqazero/aggbug/112672.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2010-04-15 15:49 <a href="http://www.cppblog.com/aqazero/archive/2010/04/15/112672.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C#clipboard, application webservice, MFC xml serialize</title><link>http://www.cppblog.com/aqazero/archive/2008/03/14/44425.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Fri, 14 Mar 2008 02:45:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2008/03/14/44425.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/44425.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2008/03/14/44425.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/44425.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/44425.html</trackback:ping><description><![CDATA[<a href="http://www.codeproject.com/Article.aspx?tag=2995835015042975" onclick="return top.js.openextlink(window,event,this)" target="_blank"></a>http://www.codeproject.com/KB/clipboard/ClipSpyPlus.aspx<br>http://www.codeproject.com/KB/aspnet/ChatApplication.aspx<br>http://www.codeproject.com/KB/webservices/wstranslate.aspx<br>http://www.ucancode.net/faq/Visual-C-MFC-XML-Example.htm<br>  <img src ="http://www.cppblog.com/aqazero/aggbug/44425.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2008-03-14 10:45 <a href="http://www.cppblog.com/aqazero/archive/2008/03/14/44425.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ASP.NET MVC</title><link>http://www.cppblog.com/aqazero/archive/2008/02/15/42761.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Fri, 15 Feb 2008 03:14:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2008/02/15/42761.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/42761.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2008/02/15/42761.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/42761.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/42761.html</trackback:ping><description><![CDATA[http://weblogs.asp.net/scottgu/archive/2007/10/14/asp-net-mvc-framework.aspx<br><img src ="http://www.cppblog.com/aqazero/aggbug/42761.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2008-02-15 11:14 <a href="http://www.cppblog.com/aqazero/archive/2008/02/15/42761.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Exposing Windows Forms Controls as ActiveX controls</title><link>http://www.cppblog.com/aqazero/archive/2007/10/17/34474.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Wed, 17 Oct 2007 12:15:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2007/10/17/34474.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/34474.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2007/10/17/34474.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/34474.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/34474.html</trackback:ping><description><![CDATA[http://www.codeproject.com/cs/miscctrl/exposingdotnetcontrols.asp
<br>http://www.c-sharpcorner.com/UploadFile/dsandor/ActiveXInNet11102005040748AM/ActiveXInNet.aspx
<br><br>UserControl is not enough sometimes.<br>Sometimes you need to Expose a Form to ActiveX. Just don't forget to set it's TopLevel to false.<br>And it seems that a Form as MDI Container can't be exposed to ActiveX.Be aware of this if you want to expose your application to ActiveX.<br><br>Ok, you get through happily, and you should distribute you activex control now. Generate a cab file and put it on you web-server? No.<br>You have to do some ugly thing before it works. God will get very angry with this.<br>http://edndoc.esri.com/arcobjects/9.2/NET/9826f81b-278c-49cc-a912-ab8d86f5e91e.htm<br>http://blogs.msdn.com/robmen/archive/2004/04/28/122491.aspx<br>http://www.clarionmag.com/cmag/v7/v7n08dotnetinterop1.html<br><br>Finally, some one has contribute his work:<br>http://www.codeproject.com/KB/cs/CreateActiveXDotNet.aspx<br><br>    <img src ="http://www.cppblog.com/aqazero/aggbug/34474.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2007-10-17 20:15 <a href="http://www.cppblog.com/aqazero/archive/2007/10/17/34474.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>render whole html page</title><link>http://www.cppblog.com/aqazero/archive/2007/10/11/33986.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Thu, 11 Oct 2007 15:57:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2007/10/11/33986.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/33986.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2007/10/11/33986.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/33986.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/33986.html</trackback:ping><description><![CDATA[Ask:<br>Hi,<br>I'm trying to render the contents of a HTML page hosted in a web<br>browser control so that I can save the result as an image.<br><br>There are a number of ways to do this. For example you can use any of<br>IHTMLElementRender,&#173; IViewObject or WM_PRINT. The problem with these<br>methods is that you only will receive the portion of the page's content<br>that is visible in the web browser. If the page's size is bigger than<br>the dimensions of the web browser these hidden or "scrollable" parts<br>will not get rendered in the above methods.<br><br>You could resize the browser to fit the entire page but that is not<br>feasible in a scenario when a user is using the browser. A second<br>approach is to load the page into a second hidden browser which, again,<br>is resized to fit the entire page. The problem with this approach is<br>that I can't load the document again since it's appearance could<br>change. I want to render exactly what's in the user's browser. AFAIK<br>there is know easy way to exactly clone a MSHTML document.<br><br>Does anyone (Igor?) have any clues how these "hidden" ares could be<br>rendered? Any help much appreciated.<br><br>Regards,<br>Christoffer<br>&nbsp;<br>Answer: <br>&nbsp;&nbsp;&nbsp; I took a couple of ideas from Code Project and pieced them together to<br>do just this. I render the client area into a small bitmap, blit it<br>into a final larger (page size) bitmap and scroll the control to get at<br>another area. This was simpler than trying to get it to render into<br>the correct area of the page size bitmap.<br><br>This was written for a browser control that was NOT seen by the user so<br>I didn't care where the final scroll position was.<br><br>1. From the IHTMLDocument interface call get_body to get the<br>IHTMLElement enterface.<br>2. Get the IHTMLElement2 interface (pBody2 in the code).<br>3. Call get_scrollHeight and get_scrollWidth, get_clientWidth,<br>get_clientHeight.<br>4. Get the IHTMLElementRender interface (pRenderer in the code).<br>5. Create a bitmap the size of the client area and select it into a<br>clientDC.<br>6. Create a bitmap the size of the scroll area and select it into a<br>pageDC.<br>7. Use some code like the following to scroll and render the page:<br><br>long x = scrollWidth;<br>long lastX = -1;<br>bool doneX = false;<br>while (!doneX)<br>{<br>&nbsp;&nbsp;&nbsp; pBody2-&gt;put_scrollLeft(x);<br>&nbsp;&nbsp;&nbsp; pBody2-&gt;get_scrollLeft(&amp;x);<br>&nbsp;&nbsp;&nbsp; if (-1 == lastX)<br>&nbsp;&nbsp;&nbsp; lastX = x + clientWidth;<br>&nbsp;&nbsp;&nbsp; long y = scrollHeight;<br>&nbsp;&nbsp;&nbsp; long lastY = -1;<br>&nbsp;&nbsp;&nbsp; bool doneY = false;<br>&nbsp;&nbsp;&nbsp; while (!doneY)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pBody2-&gt;put_scrollTop(y);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pBody2-&gt;get_scrollTop(&amp;y);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (-1 == lastY)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; lastY = y + clientHeight;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; hr = pRenderer-&gt;DrawToDC&#173;(clientDC);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; BitBlt(pageDC,x,y,lastX-x,lastY-y,clientDC,2,2,SRCCOPY);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; doneY = (y==0);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; lastY = y;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; y -= clientHeight-4;<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; doneX = (0==x);<br>&nbsp;&nbsp;&nbsp; lastX = x;<br>&nbsp;&nbsp;&nbsp; x -= clientWidth-4;<br>}<br><br>The pageDC bitmap now holds the full image of the page and you can save<br>it or do anything else you want. You'll note that what I'm doing is<br>trying to scroll too far and letting IE scroll appropriately. Also<br>note that I clip a 2 pixel edge when blitting. This is from actual<br>testing - needed to not clip the border of the control.<br><br>Hope this helps,<br><br>David Stidolph<br>Austin, TX<br><br>Ask:<br>&nbsp;&nbsp;&nbsp; Thanks for the solution, but it will unfortunately not work in my case<br>because the control is used by a user and can therefor not be scrolled<br>programmatically.<br><br>My focus now is on trying to clone the MSHTML document and then load<br>the clone in another hidden browser contol which I can resize to fit<br>the entire page and then do the rendering. The way I'm currently<br>cloning the document is saving the HTML to disk and then replacing all<br>references (images, .js, .css., ...) in the HTML document with local<br>ones which I have downloaded from the originating server (will do this<br>as a last resort), the cache or (in the cases where it's possible)<br>copied directly from the MSHTML document. When that is done I have a<br>local copy which a can browse to. Does anyone know of a better way to<br>clone a MSHTML document?<br><br>Answer:<br>&nbsp;&nbsp;&nbsp; How about using a LockWindowUpdate call before the snapshot and<br>then unlocking it after? That way, the user never knows the WB<br>scrolled. <br>  <img src ="http://www.cppblog.com/aqazero/aggbug/33986.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2007-10-11 23:57 <a href="http://www.cppblog.com/aqazero/archive/2007/10/11/33986.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>调试ISAPI</title><link>http://www.cppblog.com/aqazero/archive/2006/12/19/16604.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Tue, 19 Dec 2006 02:24:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2006/12/19/16604.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/16604.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2006/12/19/16604.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/16604.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/16604.html</trackback:ping><description><![CDATA[1，设置用户权限<br />将IUSR_[COMPUTERNAME]和IWAM_[COMPUTERNAME]添加到amdministrators组<br /><br />管理工具-本地安全策略-本地策略-用户权利指派<br />以操作系统方式操作  添加      INTERACTIVE, IUSR_[COMPUTERNAME], IWAM_[COMPUTERNAME]<br />作为服务登录         添加      INTERACTIVE, IUSR_[COMPUTERNAME], IWAM_[COMPUTERNAME]<br />调试程序               添加       INTERACTIVE, IUSR_[COMPUTERNAME], IWAM_[COMPUTERNAME]<br /><br />重新启动计算机，以使用户权限设置生效。<br /><br />2，设置Web服务<br />服务<br />IIS Admin Service<br />Simple Mail Transport Protocol (SMTP)<br />FTP Publishing Service<br />World Wide Web Publishing Service<br />的启动方式-&gt;手动。<br /><br />设置 IIS Admin Service  登录身份设为本地系统帐号，并允许与桌面交互<br /><br />打开管理工具-Internet 服务管理器，设置要允许调试的虚拟目录的属性:<br />执行许-&gt;脚本和可执行程序<br />应用程序保护-&gt;底(IIS进程)<br /><br />启动默认Web站点(必须将Web服务激活，否则调试时虽然运行了inetinfo.exe，但不会运行Web服务)<br /><br />3，配置VC project<br />Project-setting-Debug<br />Executable for debug session : C:\WINNT\system32\inetsrv\inetinfo.exe<br />Program argument : -e w3svc<br /><br />4，调试<br />执行命令行 iisreset /stop<br /><br />修改注册表信息:<br />
REGEDIT4<br /><br />
[HKEY_CLASSES_ROOT\AppID\{61738644-F196-11D0-9953-00C04FD919C1}]<br />
"LocalService"=-<br />
"RunAs"=-<br /><br />
[HKEY_CLASSES_ROOT\AppID\{9F0BD3A0-EC01-11D0-A6A0-00A0C922E752}]<br />
"LocalService"=-<br />
"RunAs"=-<br /><br />
[HKEY_CLASSES_ROOT\AppID\{A9E69610-B80D-11D0-B9B9-00A0C922E750}]<br />
"LocalService"=-<br />
"RunAs"="Interactive User"<br /><br />
将以上注册表信息保存为.reg文件双击即可。<br /><br />可以开始在VC中调试了，按F5..<br /><br />5,恢复环境<br />按Shift + F5中断调试。<br /><br />恢复注册表信息：<br />REGEDIT4<br /><br />[HKEY_CLASSES_ROOT\AppID\{61738644-F196-11D0-9953-00C04FD919C1}]<br />"LocalService"="IISADMIN"<br />"RunAs"=-<br /><br />[HKEY_CLASSES_ROOT\AppID\{9F0BD3A0-EC01-11D0-A6A0-00A0C922E752}]<br />"LocalService"="IISADMIN"<br />"RunAs"=-<br /><br />[HKEY_CLASSES_ROOT\AppID\{A9E69610-B80D-11D0-B9B9-00A0C922E750}]<br />"LocalService"="IISADMIN"<br />"RunAs"=-<br /><br />执行命令行 iisreset /start<br /><br />可能需要用到的.reg .bat<br /><a target="" class="" title="" href="/Files/aqazero/iisIsapiDebug.zip">http://www.cppblog.com/Files/aqazero/iisIsapiDebug.zip</a><br /><br />更详细信息:<br />http://xmlrad.com/DelosBin/Delos.dll/ServePage?URL=Manual/Appendix07/index.htm&amp;WEB_ID=101001015<br /><img src ="http://www.cppblog.com/aqazero/aggbug/16604.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2006-12-19 10:24 <a href="http://www.cppblog.com/aqazero/archive/2006/12/19/16604.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>xml island和javascript和xsl</title><link>http://www.cppblog.com/aqazero/archive/2005/11/08/14225.html</link><dc:creator>brent</dc:creator><author>brent</author><pubDate>Tue, 08 Nov 2005 00:44:00 GMT</pubDate><guid>http://www.cppblog.com/aqazero/archive/2005/11/08/14225.html</guid><wfw:comment>http://www.cppblog.com/aqazero/comments/14225.html</wfw:comment><comments>http://www.cppblog.com/aqazero/archive/2005/11/08/14225.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/aqazero/comments/commentRss/14225.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/aqazero/services/trackbacks/14225.html</trackback:ping><description><![CDATA[
		<table class="fixedTable blogpost" cellspacing="0" width="100%" border="0">
				<tbody>
						<tr>
								<td class="bvh8">
								</td>
						</tr>
						<tr>
								<td id="msgcns!1pvr5thyAIwicGdvbHKCUzZw!238">
										<p>
												<a href="http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/xml.asp" rel="nofollow">
														<font color="#003399">msdn关于xml element</font>
												</a>
												<br />
												<a href="http://www.w3schools.com/xml/xml_data_island.asp" rel="nofollow">
														<font color="#003399">w3schools中关于xml island</font>
												</a>
										</p>
										<p>但对于不规则的xml文件，我死活找不到使用数据岛的方法。好像xml island把xml当成一个类似数据库的表，直接把根目录下的元素当成recordset。所以对于xml文件如下找不到解决的办法：<br /><br /></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: #0000ff">&lt;?</span>
												<span style="COLOR: #ff00ff">xml version="1.0" encoding="gb2312"</span>
												<span style="COLOR: #0000ff">?&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
												</span>
												<span style="COLOR: #008000">&lt;!--</span>
												<span style="COLOR: #008000"> file name = rss_down_s10.xml</span>
												<span style="COLOR: #008000">--&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
												</span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">rss </span>
												<span style="COLOR: #ff0000">version</span>
												<span style="COLOR: #0000ff">="2.0"</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
												</span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">channel</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />       </span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">title</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">123 - 旅游杂志 </span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">title</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />       </span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">link</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">http://www.china-data.com.cn</span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">link</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />       <img src="http://www.cnitblog.com/Images/dot.gif" /><br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />       </span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">item</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />           </span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">title</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">[旅游杂志]杭州西湖 </span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">title</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />           </span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">link</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">http://www.china-data.com.cn/downinfo/93.html</span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">link</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />           <img src="http://www.cnitblog.com/Images/dot.gif" /><br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />       </span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">item</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />       </span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">item</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />           </span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">title</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">[旅游杂志]桂林旅游 </span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">title</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />           </span>
												<span style="COLOR: #0000ff">&lt;</span>
												<span style="COLOR: #800000">link</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">http://www.china-data.com.cn/downinfo/92.html</span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">link</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />           <img src="http://www.cnitblog.com/Images/dot.gif" /><br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />       </span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">item</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />       <img src="http://www.cnitblog.com/Images/dot.gif" />(item s)<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" /></span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">channel</span>
												<span style="COLOR: #0000ff">&gt;</span>
												<span style="COLOR: #000000">
														<br />
														<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
												</span>
												<span style="COLOR: #0000ff">&lt;/</span>
												<span style="COLOR: #800000">rss</span>
												<span style="COLOR: #0000ff">&gt;</span>
										</div>
										<p>
												<br />
												<br />
										</p>
										<p>为了获取前10条item的数据，只好土炮制造javascript如下</p>
										<p>
										</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">
														<span style="COLOR: #000000">DOCTYPE HTML PUBLIC </span>
														<span style="COLOR: #000000">"</span>
														<span style="COLOR: #000000">-//W3C//DTD HTML 4.0 Transitional//EN</span>
														<span style="COLOR: #000000">"</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">HTML</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">HEAD</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">TITLE</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">Test</span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;TITLE</span>
														<span style="COLOR: #000000">&gt;</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" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">script language</span>
														<span style="COLOR: #000000">=</span>
														<span style="COLOR: #000000">"</span>
														<span style="COLOR: #000000">JavaScript</span>
														<span style="COLOR: #000000">"</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000"> <br /><img id="Codehighlighter1_150_915_Open_Image" onclick="this.style.display='none'; Codehighlighter1_150_915_Open_Text.style.display='none'; Codehighlighter1_150_915_Closed_Image.style.display='inline'; Codehighlighter1_150_915_Closed_Text.style.display='inline';" src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_150_915_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_150_915_Closed_Text.style.display='none'; Codehighlighter1_150_915_Open_Image.style.display='inline'; Codehighlighter1_150_915_Open_Text.style.display='inline';" src="http://www.cnitblog.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />    </span>
														<span style="COLOR: #0000ff">function</span>
														<span style="COLOR: #000000"> load() </span>
														<span id="Codehighlighter1_150_915_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
																<img src="http://www.cnitblog.com/Images/dot.gif" />
														</span>
														<span id="Codehighlighter1_150_915_Open_Text">
																<span style="COLOR: #000000">{ <br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> xmlDoc</span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #0000ff">new</span>
																<span style="COLOR: #000000"> ActiveXObject(</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">Microsoft.XMLDOM</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        xmlDoc.load(</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">rss_Down_s10.xml</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">); <br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> channelNode </span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #000000"> xmlDoc.documentElement.firstChild;<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> objNodeList </span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #000000"> channelNode.selectNodes(</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">//item</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">);<br /><img id="Codehighlighter1_452_909_Open_Image" onclick="this.style.display='none'; Codehighlighter1_452_909_Open_Text.style.display='none'; Codehighlighter1_452_909_Closed_Image.style.display='inline'; Codehighlighter1_452_909_Closed_Text.style.display='inline';" src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_452_909_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_452_909_Closed_Text.style.display='none'; Codehighlighter1_452_909_Open_Image.style.display='inline'; Codehighlighter1_452_909_Open_Text.style.display='inline';" src="http://www.cnitblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">for</span>
																<span style="COLOR: #000000">(</span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> count </span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #000000"> </span>
																<span style="COLOR: #000000">0</span>
																<span style="COLOR: #000000">;count </span>
																<span style="COLOR: #000000">&lt;</span>
																<span style="COLOR: #000000"> </span>
																<span style="COLOR: #000000">10</span>
																<span style="COLOR: #000000"> </span>
																<span style="COLOR: #000000">&amp;&amp;</span>
																<span style="COLOR: #000000"> count </span>
																<span style="COLOR: #000000">&lt;=</span>
																<span style="COLOR: #000000"> objNodeList.length;count </span>
																<span style="COLOR: #000000">++</span>
																<span style="COLOR: #000000">)</span>
																<span id="Codehighlighter1_452_909_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
																		<img src="http://www.cnitblog.com/Images/dot.gif" />
																</span>
																<span id="Codehighlighter1_452_909_Open_Text">
																		<span style="COLOR: #000000">{<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />            </span>
																		<span style="COLOR: #0000ff">var</span>
																		<span style="COLOR: #000000"> itemnode </span>
																		<span style="COLOR: #000000">=</span>
																		<span style="COLOR: #000000"> objNodeList.item(count);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />            </span>
																		<span style="COLOR: #0000ff">var</span>
																		<span style="COLOR: #000000"> titleText </span>
																		<span style="COLOR: #000000">=</span>
																		<span style="COLOR: #000000"> </span>
																		<span style="COLOR: #000000">""</span>
																		<span style="COLOR: #000000">;<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />            </span>
																		<span style="COLOR: #0000ff">var</span>
																		<span style="COLOR: #000000"> titleNode </span>
																		<span style="COLOR: #000000">=</span>
																		<span style="COLOR: #000000"> itemnode.selectSingleNode(</span>
																		<span style="COLOR: #000000">"</span>
																		<span style="COLOR: #000000">title</span>
																		<span style="COLOR: #000000">"</span>
																		<span style="COLOR: #000000">);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />            </span>
																		<span style="COLOR: #0000ff">if</span>
																		<span style="COLOR: #000000">(titleNode </span>
																		<span style="COLOR: #000000">!=</span>
																		<span style="COLOR: #000000"> </span>
																		<span style="COLOR: #0000ff">null</span>
																		<span style="COLOR: #000000">)<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />                titleText </span>
																		<span style="COLOR: #000000">=</span>
																		<span style="COLOR: #000000"> titleNode.text;<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />            </span>
																		<span style="COLOR: #0000ff">var</span>
																		<span style="COLOR: #000000"> linkText </span>
																		<span style="COLOR: #000000">=</span>
																		<span style="COLOR: #000000"> </span>
																		<span style="COLOR: #000000">""</span>
																		<span style="COLOR: #000000">;<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />            </span>
																		<span style="COLOR: #0000ff">var</span>
																		<span style="COLOR: #000000"> linkNode </span>
																		<span style="COLOR: #000000">=</span>
																		<span style="COLOR: #000000"> itemnode.selectSingleNode(</span>
																		<span style="COLOR: #000000">"</span>
																		<span style="COLOR: #000000">link</span>
																		<span style="COLOR: #000000">"</span>
																		<span style="COLOR: #000000">);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />            </span>
																		<span style="COLOR: #0000ff">if</span>
																		<span style="COLOR: #000000">(linkNode </span>
																		<span style="COLOR: #000000">!=</span>
																		<span style="COLOR: #000000"> </span>
																		<span style="COLOR: #0000ff">null</span>
																		<span style="COLOR: #000000">)<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />                linkText </span>
																		<span style="COLOR: #000000">=</span>
																		<span style="COLOR: #000000"> linkNode.text;<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />            addRow(</span>
																		<span style="COLOR: #000000">"</span>
																		<span style="COLOR: #000000">test</span>
																		<span style="COLOR: #000000">"</span>
																		<span style="COLOR: #000000">,count,titleText,linkText);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span>
																</span>
																<span style="COLOR: #000000">
																		<br />
																		<img src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span>
														</span>
														<span style="COLOR: #000000"> <br /><img id="Codehighlighter1_958_1525_Open_Image" onclick="this.style.display='none'; Codehighlighter1_958_1525_Open_Text.style.display='none'; Codehighlighter1_958_1525_Closed_Image.style.display='inline'; Codehighlighter1_958_1525_Closed_Text.style.display='inline';" src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_958_1525_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_958_1525_Closed_Text.style.display='none'; Codehighlighter1_958_1525_Open_Image.style.display='inline'; Codehighlighter1_958_1525_Open_Text.style.display='inline';" src="http://www.cnitblog.com/Images/OutliningIndicators/ContractedBlock.gif" align="top" />    </span>
														<span style="COLOR: #0000ff">function</span>
														<span style="COLOR: #000000"> addRow(id,index,title,link)</span>
														<span id="Codehighlighter1_958_1525_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
																<img src="http://www.cnitblog.com/Images/dot.gif" />
														</span>
														<span id="Codehighlighter1_958_1525_Open_Text">
																<span style="COLOR: #000000">{<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> tbody </span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #000000"> document.getElementById(id).getElementsByTagName(</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">TBODY</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">)[</span>
																<span style="COLOR: #000000">0</span>
																<span style="COLOR: #000000">];<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> row </span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #000000"> document.createElement(</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">TR</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">)<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> td0 </span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #000000"> document.createElement(</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">TD</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">)<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        td0.appendChild (document.createTextNode(index))<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> td1 </span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #000000"> document.createElement(</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">TD</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">)<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        td1.appendChild(document.createTextNode(title))<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        </span>
																<span style="COLOR: #0000ff">var</span>
																<span style="COLOR: #000000"> td2 </span>
																<span style="COLOR: #000000">=</span>
																<span style="COLOR: #000000"> document.createElement(</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">TD</span>
																<span style="COLOR: #000000">"</span>
																<span style="COLOR: #000000">)<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        td2.appendChild (document.createTextNode(link))<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        row.appendChild(td0);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        row.appendChild(td1);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        row.appendChild(td2);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif" align="top" />        tbody.appendChild(row);<br /><img src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span>
														</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;script</span>
														<span style="COLOR: #000000">&gt;</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" /></span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;HEAD</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">BODY onload </span>
														<span style="COLOR: #000000">=</span>
														<span style="COLOR: #000000"> load()</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">table id </span>
														<span style="COLOR: #000000">=</span>
														<span style="COLOR: #000000"> </span>
														<span style="COLOR: #000000">"</span>
														<span style="COLOR: #000000">test</span>
														<span style="COLOR: #000000">"</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">tr</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">td</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">1</span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;td</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">td</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">2</span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;td</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">td</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">3</span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;td</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;tr</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">&lt;</span>
														<span style="COLOR: #000000">table</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;BODY</span>
														<span style="COLOR: #000000">&gt;</span>
														<span style="COLOR: #000000">
																<br />
																<img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align="top" />
														</span>
														<span style="COLOR: #000000">SPAN style="COLOR: #000000"&gt;HTML</span>
														<span style="COLOR: #000000">&gt;</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" />
														</span>
												</span>
										</div>
										<p>
												<br />
												<br />如果rss_Down_s10.xml可以被修改，还可以使用xsl来按格式显示数据。</p>
								</td>
						</tr>
				</tbody>
		</table>
<img src ="http://www.cppblog.com/aqazero/aggbug/14225.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/aqazero/" target="_blank">brent</a> 2005-11-08 08:44 <a href="http://www.cppblog.com/aqazero/archive/2005/11/08/14225.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>