﻿<?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>BlogJava-CowNew开源团队 向四川汶川大地震遇难同胞表示深切哀悼！</title><link>http://www.blogjava.net/huanzhugege/</link><description>http://www.cownew.com
邮件请联系 about521 at 163.com</description><language>zh-cn</language><lastBuildDate>Wed, 09 Jul 2008 08:30:59 GMT</lastBuildDate><pubDate>Wed, 09 Jul 2008 08:30:59 GMT</pubDate><ttl>60</ttl><item><title>被拿来主义给惯坏了</title><link>http://www.blogjava.net/huanzhugege/archive/2008/07/03/212319.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Thu, 03 Jul 2008 06:22:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/07/03/212319.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/212319.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/07/03/212319.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/212319.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/212319.html</trackback:ping><description><![CDATA[<p>有同事竟然找LOWORD、HIWORD在C#中的替代函数搞了一个上午 。看来真是被拿来主义给惯坏了，自己写一分钟就能写出来<img src="/CuteSoft_Client/CuteEditor/images/emcrook.gif" align="absMiddle" border="0"  alt="" /><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// &lt;summary&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// 取低位<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// &lt;/summary&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// &lt;param name="i"&gt;&lt;/param&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// &lt;returns&gt;&lt;/returns&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public static int LOWORD(int i)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return i &amp; 0xFFFF;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// &lt;summary&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// 取高位<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// &lt;/summary&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// &lt;param name="i"&gt;&lt;/param&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /// &lt;returns&gt;&lt;/returns&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public static int HIWORD(int i)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return i &gt;&gt; 16;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } </p>
<img src ="http://www.blogjava.net/huanzhugege/aggbug/212319.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-07-03 14:22 <a href="http://www.blogjava.net/huanzhugege/archive/2008/07/03/212319.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《antlr 2.7.5 中文文档》发布</title><link>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211762.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Mon, 30 Jun 2008 14:11:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211762.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/211762.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211762.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/211762.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/211762.html</trackback:ping><description><![CDATA[<p>历经半年时间，《antlr 2.7.5 中文文档》正式版终于发布！</p>
<p>感谢<span style="font-size: 12pt; font-family: 宋体; mso-bidi-font-size: 11.0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">欧进利、周晓、曲金龙、</span><span lang="EN-US" style="font-size: 12pt; font-family: 'Arial','sans-serif'; mso-bidi-font-size: 11.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">west2snow</span><span style="font-size: 12pt; font-family: 宋体; mso-bidi-font-size: 11.0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">、阿乐、杨中科等队友卓有成效的工作。特别是<span style="font-size: 12pt; font-family: 宋体; mso-bidi-font-size: 11.0pt; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">欧进利挤出个人时间为文档的最后的合稿与校对做了大量的工作。</span><br />
<span style="font-size: 12pt; font-family: 宋体">未经</span><span style="font-size: 12pt; font-family: 'Arial','sans-serif'">Antlr.org</span><span style="font-size: 12pt; font-family: 宋体">和</span><span style="font-size: 12pt; font-family: 'Arial','sans-serif'">CowNew</span><span style="font-size: 12pt; font-family: 宋体">开源团队许可，请勿将此文档用做商业用途！</span></span> </p>
点击下载：<br />
<a href="http://www.blogjava.net/Files/huanzhugege/antlr_2_7_5_中文文档.rar">http://www.blogjava.net/Files/huanzhugege/antlr_2_7_5_中文文档.rar</a>
<img src ="http://www.blogjava.net/huanzhugege/aggbug/211762.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-06-30 22:11 <a href="http://www.blogjava.net/huanzhugege/archive/2008/06/30/211762.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SWT中通过Automatioin的方式访问IE（升级版）</title><link>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211744.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Mon, 30 Jun 2008 13:08:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211744.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/211744.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211744.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/211744.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/211744.html</trackback:ping><description><![CDATA[<a id="homepage1_HomePageDays_DaysList_ctl01_DayItem_DayList_ctl00_TitleUrl" href="http://www.blogjava.net/huanzhugege/archive/2008/06/23/210099.html">SWT中调用Automation的方式</a> 这篇文章中我们介绍了SWT中通过Automation访问IE的方式，但是只是简单的URL导航，没有自动填表单、自动提交等功能。我们对其进行了升级，采用了新的操作方式，充分利用了SWT对OLE的支持，裁减掉大量代码。现在可以实现自动填表单、自动提交等功能。不过暂时还无法响应IE的事件。<br />
核心代码如下：<br />
<p>package test;</p>
<p>import org.eclipse.swt.SWTException;<br />
import org.eclipse.swt.internal.ole.win32.COM;<br />
import org.eclipse.swt.internal.ole.win32.GUID;<br />
import org.eclipse.swt.internal.ole.win32.IUnknown;<br />
import org.eclipse.swt.ole.win32.OLE;<br />
import org.eclipse.swt.ole.win32.OleClientSite;<br />
import org.eclipse.swt.widgets.Composite;</p>
<p>/**<br />
&nbsp;* <br />
&nbsp;* @author 杨中科<br />
&nbsp;*<br />
&nbsp;*/<br />
public class AutomationClientSite extends OleClientSite<br />
{<br />
&nbsp;public AutomationClientSite(Composite parent, int style, String progId)<br />
&nbsp;{<br />
&nbsp;&nbsp;super(parent, style);<br />
&nbsp;&nbsp;try<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;appClsid = getClassID(progId);<br />
&nbsp;&nbsp;&nbsp;if (appClsid == null)<br />
&nbsp;&nbsp;&nbsp;&nbsp;OLE.error(OLE.ERROR_INVALID_CLASSID);</p>
<p>&nbsp;&nbsp;&nbsp;//使用CoCreateInstance创建一个进程外Automation服务器<br />
&nbsp;&nbsp;&nbsp;int[] address = new int[1];<br />
&nbsp;&nbsp;&nbsp;int result = COM.CoCreateInstance(getClassID(progId), 0,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COM.CLSCTX_INPROC_SERVER | COM.CLSCTX_LOCAL_SERVER,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COM.IIDIUnknown, address);<br />
&nbsp;&nbsp;&nbsp;if (result != COM.S_OK)<br />
&nbsp;&nbsp;&nbsp;&nbsp;OLE.error(OLE.ERROR_CANNOT_CREATE_OBJECT, result);</p>
<p>&nbsp;&nbsp;&nbsp;objIUnknown = new IUnknown(address[0]);</p>
<p>&nbsp;&nbsp;} catch (SWTException e)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;dispose();<br />
&nbsp;&nbsp;&nbsp;disposeCOMInterfaces();<br />
&nbsp;&nbsp;&nbsp;throw e;<br />
&nbsp;&nbsp;}<br />
&nbsp;}</p>
<p>&nbsp;protected GUID getClassID(String progId)<br />
&nbsp;{<br />
&nbsp;&nbsp;GUID guid = new GUID();<br />
&nbsp;&nbsp;// create a null terminated array of char<br />
&nbsp;&nbsp;char[] buffer = null;<br />
&nbsp;&nbsp;if (progId != null)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;int count = progId.length();<br />
&nbsp;&nbsp;&nbsp;buffer = new char[count + 1];<br />
&nbsp;&nbsp;&nbsp;progId.getChars(0, count, buffer, 0);<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;if (COM.CLSIDFromProgID(buffer, guid) != COM.S_OK)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;int result = COM.CLSIDFromString(buffer, guid);<br />
&nbsp;&nbsp;&nbsp;if (result != COM.S_OK)<br />
&nbsp;&nbsp;&nbsp;&nbsp;OLE.error(result);<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;return guid;<br />
&nbsp;}</p>
<p>}<br />
public class OleUtils<br />
{<br />
&nbsp;public static int getIdOfName(OleAutomation auto, String name)<br />
&nbsp;{<br />
&nbsp;&nbsp;int[] ret = auto.getIDsOfNames(new String[]{name});<br />
&nbsp;&nbsp;return ret[0];<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public static void setProperty(OleAutomation auto, String name,Variant value)<br />
&nbsp;{<br />
&nbsp;&nbsp;int id = getIdOfName(auto, name);<br />
&nbsp;&nbsp;auto.setProperty(id, new Variant[]{value});<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public static Variant getProperty(OleAutomation auto, String name)<br />
&nbsp;{<br />
&nbsp;&nbsp;int id = getIdOfName(auto, name);<br />
&nbsp;&nbsp;return auto.getProperty(id);<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public static Variant invoke(OleAutomation auto, String name)<br />
&nbsp;{<br />
&nbsp;&nbsp;return invoke(auto,name,new Variant[0]);<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public static Variant invoke(OleAutomation auto, String name,Variant... params)<br />
&nbsp;{<br />
&nbsp;&nbsp;int id = getIdOfName(auto, name);<br />
&nbsp;&nbsp;return auto.invoke(id,params);<br />
&nbsp;}<br />
}<br />
<br />
<br />
<br />
</p>
<p>package test;</p>
<p>import org.eclipse.swt.ole.win32.OleAutomation;<br />
import org.eclipse.swt.ole.win32.Variant;</p>
<p>/**<br />
&nbsp;* <br />
&nbsp;* @author 杨中科<br />
&nbsp;*<br />
&nbsp;*/<br />
public class HtmlElement<br />
{<br />
&nbsp;private OleAutomation auto;</p>
<p>&nbsp;public HtmlElement(OleAutomation auto)<br />
&nbsp;{<br />
&nbsp;&nbsp;this.auto = auto;<br />
&nbsp;}</p>
<p>&nbsp;protected OleAutomation getOleAutomation()<br />
&nbsp;{<br />
&nbsp;&nbsp;return auto;<br />
&nbsp;}</p>
<p>&nbsp;public void setProperty(String name, Variant value)<br />
&nbsp;{<br />
&nbsp;&nbsp;OleUtils.setProperty(auto, name, value);<br />
&nbsp;}</p>
<p>&nbsp;public Variant getPropertyAsVariant(String name)<br />
&nbsp;{<br />
&nbsp;&nbsp;Variant value = OleUtils.getProperty(auto, name);<br />
&nbsp;&nbsp;return value;<br />
&nbsp;}</p>
<p>&nbsp;public void setProperty(String name, int value)<br />
&nbsp;{<br />
&nbsp;&nbsp;OleUtils.setProperty(auto, name, new Variant(value));<br />
&nbsp;}</p>
<p>&nbsp;public int getPropertyAsInt(String name)<br />
&nbsp;{<br />
&nbsp;&nbsp;Variant value = OleUtils.getProperty(auto, name);<br />
&nbsp;&nbsp;return value.getInt();<br />
&nbsp;}</p>
<p>&nbsp;public void setProperty(String name, boolean value)<br />
&nbsp;{<br />
&nbsp;&nbsp;OleUtils.setProperty(auto, name, new Variant(value));<br />
&nbsp;}</p>
<p>&nbsp;public boolean getPropertyAsBool(String name)<br />
&nbsp;{<br />
&nbsp;&nbsp;Variant value = OleUtils.getProperty(auto, name);<br />
&nbsp;&nbsp;return value.getBoolean();<br />
&nbsp;}</p>
<p>&nbsp;public void setProperty(String name, String value)<br />
&nbsp;{<br />
&nbsp;&nbsp;OleUtils.setProperty(auto, name, new Variant(value));<br />
&nbsp;}</p>
<p>&nbsp;public String getPropertyAsString(String name)<br />
&nbsp;{<br />
&nbsp;&nbsp;Variant value = OleUtils.getProperty(auto, name);<br />
&nbsp;&nbsp;return value.getString();<br />
&nbsp;}</p>
<p>&nbsp;public HtmlElement getPropertyAsHtmlElement(String name)<br />
&nbsp;{<br />
&nbsp;&nbsp;Variant value = OleUtils.getProperty(auto, name);<br />
&nbsp;&nbsp;return new HtmlElement(value.getAutomation());<br />
&nbsp;}</p>
<p>&nbsp;public Variant invoke(String name,Variant... params)<br />
&nbsp;{<br />
&nbsp;&nbsp;return OleUtils.invoke(auto, name,params);<br />
&nbsp;}</p>
<p>&nbsp;public int invoke_Int(String name,Variant... params)<br />
&nbsp;{<br />
&nbsp;&nbsp;return invoke(name,params).getInt();<br />
&nbsp;}</p>
<p>&nbsp;public boolean invoke_Bool(String name,Variant... params)<br />
&nbsp;{<br />
&nbsp;&nbsp;return invoke(name,params).getBoolean();<br />
&nbsp;}</p>
<p>&nbsp;public String invoke_String(String name,Variant... params)<br />
&nbsp;{<br />
&nbsp;&nbsp;return invoke(name,params).getString();<br />
&nbsp;}</p>
<p>&nbsp;public HtmlElement invoke_HtmlElement(String name,Variant... params)<br />
&nbsp;{<br />
&nbsp;&nbsp;return new HtmlElement(invoke(name,params).getAutomation());<br />
&nbsp;}<br />
}<br />
</p>
<br />
<br />
<br />
<p>package test;</p>
<p>import org.eclipse.swt.ole.win32.OleAutomation;<br />
import org.eclipse.swt.ole.win32.OleClientSite;<br />
import org.eclipse.swt.ole.win32.Variant;</p>
<p>/**<br />
&nbsp;* 更多方法参考MSDN&#8220;InternetExplorer Object&#8221;文档<br />
&nbsp;* <br />
&nbsp;* @author 杨中科<br />
&nbsp;* <br />
&nbsp;*/<br />
public class IEAutomation extends HtmlElement<br />
{</p>
<p>&nbsp;public IEAutomation(OleClientSite clientSite)<br />
&nbsp;{<br />
&nbsp;&nbsp;super(new OleAutomation(clientSite));<br />
&nbsp;}</p>
<p>&nbsp;public void setVisible(boolean value)<br />
&nbsp;{<br />
&nbsp;&nbsp;setProperty("Visible", value);<br />
&nbsp;}</p>
<p>&nbsp;public boolean isVisible()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsBool("Visible");<br />
&nbsp;}</p>
<p>&nbsp;public void setMenuBar(boolean value)<br />
&nbsp;{<br />
&nbsp;&nbsp;setProperty("MenuBar", value);<br />
&nbsp;}</p>
<p>&nbsp;public boolean isMenuBar()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsBool("MenuBar");<br />
&nbsp;}</p>
<p>&nbsp;public void setStatusBar(boolean value)<br />
&nbsp;{<br />
&nbsp;&nbsp;setProperty("StatusBar", value);<br />
&nbsp;}</p>
<p>&nbsp;public boolean isStatusBar()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsBool("StatusBar");<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public void setToolBar(boolean value)<br />
&nbsp;{<br />
&nbsp;&nbsp;setProperty("ToolBar", value);<br />
&nbsp;}</p>
<p>&nbsp;public boolean isToolBar()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsBool("ToolBar");<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public int getHWND()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsInt("HWND");<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public String getReadyState()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsString("ReadyState");<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public String getLocationURL()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsString("LocationURL");<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;public boolean getBusy()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsBool("Busy");<br />
&nbsp;}</p>
<p>&nbsp;public void navigate(String url)<br />
&nbsp;{<br />
&nbsp;&nbsp;invoke("Navigate", new Variant(url));<br />
&nbsp;}</p>
<p>&nbsp;public HtmlElement getDocument()<br />
&nbsp;{<br />
&nbsp;&nbsp;return getPropertyAsHtmlElement("Document");<br />
&nbsp;}</p>
<p>&nbsp;public String getInnerHtml()<br />
&nbsp;{<br />
&nbsp;&nbsp;HtmlElement document = getPropertyAsHtmlElement("Document");<br />
&nbsp;&nbsp;HtmlElement body = document.getPropertyAsHtmlElement("body");<br />
&nbsp;&nbsp;return body.getPropertyAsString("innerHtml");<br />
&nbsp;}</p>
<p>&nbsp;public HtmlElement getElementById(String id)<br />
&nbsp;{<br />
&nbsp;&nbsp;HtmlElement document = getDocument();<br />
&nbsp;&nbsp;return document.invoke_HtmlElement("getElementById", new Variant(id));<br />
&nbsp;}</p>
<p>&nbsp;public void quit()<br />
&nbsp;{<br />
&nbsp;&nbsp;invoke("Quit");<br />
&nbsp;}<br />
}<br />
</p>
<br />
<br />
<br />
使用范例：<br />
<p>&nbsp;protected void 自动填表()<br />
&nbsp;{<br />
&nbsp;&nbsp;//"kw"为关键字输入框<br />
&nbsp;&nbsp;HtmlElement txtKW = ie.getElementById("kw");<br />
&nbsp;&nbsp;//自动填表<br />
&nbsp;&nbsp;txtKW.setProperty("value", "杨中科");<br />
&nbsp;&nbsp;HtmlElement btnSB = ie.getElementById("sb");<br />
&nbsp;&nbsp;//自动点击【百度一下】按钮自动提交查询<br />
&nbsp;&nbsp;btnSB.invoke("click");<br />
&nbsp;}<br />
&nbsp;private void automation() throws Exception<br />
&nbsp;{<br />
&nbsp;&nbsp;OleFrame frame = new OleFrame(composite, SWT.NONE); <br />
&nbsp;&nbsp;AutomationClientSite client = <br />
&nbsp;&nbsp;&nbsp;new AutomationClientSite(frame,SWT.NONE,"InternetExplorer.Application");&nbsp;&nbsp;&nbsp; <br />
&nbsp; <br />
&nbsp;&nbsp;ie = new IEAutomation(client);<br />
&nbsp;&nbsp;ie.setVisible(true);<br />
&nbsp;&nbsp;ie.setMenuBar(false);<br />
&nbsp;&nbsp;ie.setToolBar(false);<br />
&nbsp;&nbsp;ie.setStatusBar(false);<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;int hwnd = ie.getHWND();<br />
&nbsp;&nbsp;OS.SetParent(hwnd, composite.handle);<br />
&nbsp;&nbsp;// 窗口最大化<br />
&nbsp;&nbsp;OS.SendMessage(hwnd, OS.WM_SYSCOMMAND, OS.SC_MAXIMIZE, 0);<br />
&nbsp;&nbsp;OS.SendMessage(hwnd, OS.WM_ACTIVATE, 0, 0);<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;ie.navigate("http://www.baidu.com");<br />
&nbsp;&nbsp;//等待加载完毕，正确的方式应该是在网页onComplete的时候继续执行，但是没弄明白OLE 的EventSink机制怎么搞到SWT中来<br />
&nbsp;&nbsp;//所以先凑合着Sleep循环检测getBusy()的值，当不busy的时候再进行后续处理<br />
&nbsp;&nbsp;while(ie.getBusy())<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;Thread.sleep(10);<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;msgBox(ie.getInnerHtml());<br />
&nbsp;&nbsp;//"sb"为【百度一下】这个按钮的id<br />
&nbsp;&nbsp;HtmlElement btnSB = ie.getElementById("sb");<br />
&nbsp;&nbsp;//取value属性<br />
&nbsp;&nbsp;String txt = btnSB.getPropertyAsString("value");<br />
&nbsp;&nbsp;msgBox("按钮上的文字："+txt);<br />
&nbsp;&nbsp;msgBox("网址："+ie.getLocationURL());<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;composite.addDisposeListener(new DisposeListener() {<br />
&nbsp;&nbsp;&nbsp;public void widgetDisposed(DisposeEvent e)<br />
&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;//必须手动指定退出，否则会报异常<br />
&nbsp;&nbsp;&nbsp;&nbsp;ie.quit();<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;});<br />
&nbsp;}<br />
</p>
<img src ="http://www.blogjava.net/huanzhugege/aggbug/211744.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-06-30 21:08 <a href="http://www.blogjava.net/huanzhugege/archive/2008/06/30/211744.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ext/Ajax技术学习及交流活动(北京) </title><link>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211743.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Mon, 30 Jun 2008 13:01:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211743.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/211743.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/06/30/211743.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/211743.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/211743.html</trackback:ping><description><![CDATA[时间：2008年7月5日下午13:30到17:30<br />
　　活动地点：北京清华大学(清华东门Fit楼)<br />
　　特邀咨询师： EasyJF开源团队　大峡
<p>　　活动参加对象：vifir.com的vip用户；<br />
　　参加费用：VIP免费；</p>
<p>　　主办单：开源人网站(<a href="http://www.vifir.com/">www.vifir.com</a>)<br />
　　承办单位：成都蓝源信息技术有限公司　EasyJF开源团队　Cownew开源团队<br />
　　<br />
　　活动内容：<br />
　　采用开展专题讲座、问题答疑等形式，在网下开展面对面的关于前沿富客户端技术的应用及经验交流活动，主要以Ext技术的学习及应用经验交流为主。还将会根据vifir推出的一些ext应用示例，进行比较深入的分析及探讨。</p>
<p>　　活动联系人：静水 (QQ: 970426526)　联系电话：028-86272612<br />
　　电子邮箱：970426526 at qq.com<br />
</p>
<img src ="http://www.blogjava.net/huanzhugege/aggbug/211743.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-06-30 21:01 <a href="http://www.blogjava.net/huanzhugege/archive/2008/06/30/211743.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SWT中调用Automation的方式</title><link>http://www.blogjava.net/huanzhugege/archive/2008/06/23/210099.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Mon, 23 Jun 2008 09:04:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/06/23/210099.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/210099.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/06/23/210099.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/210099.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/210099.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在SWT中提供了访问OLE的方式，不过相关的例子都是进程内OLE的例子，比如嵌入浏览器、引用ActiveX控件什么的。由于客户的需求，我们需要在程序中通过进程外Automation服务的方式访问IE浏览器。经过网上搜寻，找到一个朋友写的CComObject类可以访问Automation服务。不过经过使用发现一些错误，因此对其进行了修改，为了方便访问IE，我又封装了一个IEAutomation类，这...&nbsp;&nbsp;<a href='http://www.blogjava.net/huanzhugege/archive/2008/06/23/210099.html'>阅读全文</a><img src ="http://www.blogjava.net/huanzhugege/aggbug/210099.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-06-23 17:04 <a href="http://www.blogjava.net/huanzhugege/archive/2008/06/23/210099.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《专家手记AJAX开发实战 》电子试读版发布</title><link>http://www.blogjava.net/huanzhugege/archive/2008/06/22/209870.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Sun, 22 Jun 2008 10:19:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/06/22/209870.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/209870.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/06/22/209870.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/209870.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/209870.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 《专家手记AJAX开发实战》电子版下载地址：http://www.blogjava.net/Files/huanzhugege/《专家手记AJAX开发实战》电子版.rar<br>&nbsp;&nbsp;<a href='http://www.blogjava.net/huanzhugege/archive/2008/06/22/209870.html'>阅读全文</a><img src ="http://www.blogjava.net/huanzhugege/aggbug/209870.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-06-22 18:19 <a href="http://www.blogjava.net/huanzhugege/archive/2008/06/22/209870.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SWT程序中嵌入第三方程序的窗口</title><link>http://www.blogjava.net/huanzhugege/archive/2008/06/05/205990.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Thu, 05 Jun 2008 02:49:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/06/05/205990.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/205990.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/06/05/205990.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/205990.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/205990.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 在开发系统的时候经常需要嵌入外部的程序，比如将企业原有的系统集成到我们的系统中，而且要求看起来像和我们的程序一样嵌入到我们的系统中，这时就要借助于Win32了。在以前使用VC、Delphi、C#开发的使用的时候可以直接调用Win32的API来操作，好在SWT中提供了Win32API的封装，而且封装的比较好，大部分都在org.eclipse.swt.internal.win32.OS这个类中。核心原理就是调用SetParent这个API将我们的程序中的某个控件设置为被嵌套程序的父窗口。具体原理可以参考我以前写的《<a id="viewpost1_TitleUrl" href="http://www.blogjava.net/huanzhugege/archive/2008/04/24/195516.html">WPF中嵌入普通Win32程序的方法</a> 》（<a href="http://www.blogjava.net/huanzhugege/archive/2008/04/24/195516.html">http://www.blogjava.net/huanzhugege/archive/2008/04/24/195516.html</a>）。<br />
主要代码如下：<br />
&nbsp;private void executeProg(String fileName) throws Exception<br />
&nbsp;{<br />
&nbsp;&nbsp;int hHeap = OS.GetProcessHeap ();<br />
&nbsp;&nbsp;TCHAR buffer = new TCHAR (0, fileName, true);<br />
&nbsp;&nbsp;int byteCount = buffer.length () * TCHAR.sizeof;<br />
&nbsp;&nbsp;int lpFile = OS.HeapAlloc (hHeap, OS.HEAP_ZERO_MEMORY, byteCount);<br />
&nbsp;&nbsp;OS.MoveMemory (lpFile, buffer, byteCount);<br />
&nbsp;&nbsp;SHELLEXECUTEINFO info = new SHELLEXECUTEINFO ();<br />
&nbsp;&nbsp;info.cbSize = SHELLEXECUTEINFO.sizeof;<br />
&nbsp;&nbsp;info.lpFile = lpFile;<br />
&nbsp;&nbsp;//隐藏启动<br />
&nbsp;&nbsp;info.nShow = OS.SW_HIDE;<br />
&nbsp;&nbsp;boolean result = OS.ShellExecuteEx (info);<br />
&nbsp;&nbsp;if (lpFile != 0) OS.HeapFree (hHeap, 0, lpFile);<br />
&nbsp;&nbsp;if(result==false)<br />
&nbsp;&nbsp;&nbsp;throw new Exception("启动失败!");<br />
&nbsp;}<br />
&nbsp;<br />
&nbsp;protected void startNotePad() throws Exception {<br />
&nbsp;&nbsp;//"notepad.exe"为待启动的程序名<br />
&nbsp;&nbsp;executeProg("notepad.exe");<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;//等待NotePad.exe启动并且初始化完毕，需要根据实际情况调整sleep的时间<br />
&nbsp;&nbsp;Thread.sleep(1000);&nbsp;&nbsp;<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;//"Notepad"为被嵌套程序窗口的ClassName(Win32级别)，可以使用Spy++等工具查看<br />
&nbsp;&nbsp;int notepadHwnd = OS.FindWindow(new TCHAR(0,"Notepad",true),null);<br />
&nbsp;&nbsp;<br />
&nbsp;&nbsp;//&amp;~WS_BORDER去掉内嵌程序边框，这样看起来更像一个内嵌的程序。如果需要显示边框，则将这两行代码删除<br />
&nbsp;&nbsp;int oldStyle = OS.GetWindowLong(notepadHwnd, OS.GWL_STYLE);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OS.SetWindowLong(notepadHwnd, OS.GWL_STYLE, oldStyle&amp;~OS.WS_BORDER);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //composite为承载被启动程序的控件<br />
&nbsp;&nbsp;OS.SetParent(notepadHwnd, composite.handle);&nbsp;&nbsp;<br />
&nbsp;&nbsp;//窗口最大化<br />
&nbsp;&nbsp;OS.SendMessage(notepadHwnd, OS.WM_SYSCOMMAND, OS.SC_MAXIMIZE, 0);<br />
&nbsp;} <br />
<br />
<a href="http://www.blogjava.net/Files/huanzhugege/swtwin32.zip">全部代码在此下载：http://www.blogjava.net/Files/huanzhugege/swtwin32.zip</a><br />
<img src ="http://www.blogjava.net/huanzhugege/aggbug/205990.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-06-05 10:49 <a href="http://www.blogjava.net/huanzhugege/archive/2008/06/05/205990.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《Hibernate完全手册》已经上市</title><link>http://www.blogjava.net/huanzhugege/archive/2008/06/04/205726.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Wed, 04 Jun 2008 02:16:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/06/04/205726.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/205726.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/06/04/205726.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/205726.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/205726.html</trackback:ping><description><![CDATA[由CowNew开源团队的侯志松（网名：芽孢）编写的《<span class="big">Hibernate完全手册</span>》已经由机械工业出版社出版。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 本书从应用程序开发的角度出发，在介绍关系数据库系统知识和面向对象方法的基础上，全面介绍对象关系映射领域的工业标准――Hibernate的基本功能、体系架构、使用方法及高级特性。全书以对象关系映射为主线，分成3个模块：第1～6章介绍对象持久化的基础以及Hibernate的基本配置和使用方法；第7～11章详细介绍如何使用Hibernate实现对象关系的映射，并讨论了使用面向对象方式查询数据的方法和技巧；第12～16章分析了Hibernate中事务、并发、缓存等高级特性，并讨论了如何整合Hibernate和成熟技术，构建企业级应用程序开发框架的技术实践。
<img src ="http://www.blogjava.net/huanzhugege/aggbug/205726.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-06-04 10:16 <a href="http://www.blogjava.net/huanzhugege/archive/2008/06/04/205726.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>CowNew开源团队第一本合著图书《专家手记AJAX开发实战》出版了</title><link>http://www.blogjava.net/huanzhugege/archive/2008/06/03/205598.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Tue, 03 Jun 2008 08:59:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/06/03/205598.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/205598.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/06/03/205598.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/205598.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/205598.html</trackback:ping><description><![CDATA[<div class="Section0" style="layout-grid:  15.6pt none">
<p class="0" style="text-indent: 21pt"><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><font face="宋体">随着Web开发的不断进步，AJAX以一种新的面貌出现在了我们面前，并且迅速席卷全球，成为一种炙手可热的技术。越来越多的开发人员想快速的掌握这门技术，并把它快速应用到自己的项目中。</font></span><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p>
<p class="0" style="text-indent: 21pt"><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><font face="宋体">虽然构成AJAX的技术已经非常成熟了，但是都是以CSS、JavaScript、XML等单一形式出现的，所以相关的技术书籍都仅仅停留在孤立的介绍这些技术方面，读者无法将这些技术有机的整合起来，更无从谈起将AJAX应用到项目中。本书将尝试着打破这种局面，在书中我们对AJAX的基础知识做有重点的介绍，而且本书中将穿插各种小的案例，让读者能够在实践中快速学习到AJAX技术，并且在最后我们安排了一个实用性非常强的WebOS应用，让读者能够学了就能懂、懂了立即用。</font></span><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p>
<p class="0" style="text-indent: 21pt"><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><font face="宋体">在AJAX领域已经有一些非常好的图书出版，不过这些图书大都是用PHP、.Net等语言描述的，以Java实现的并不是很多，即使有也是浅尝辄止。不过《专家手记AJAX开发实战&nbsp;》的出现改变了这一面貌。</font></span><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p>
<p class="0" style="text-indent: 21pt"><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><font face="宋体">这本书不仅用了大量篇幅介绍了流行的AJAX框架，更加可贵的是，书中用了三个章节</font></span><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><font face="宋体">以一个实用的WebOS为案例讲解了基于AJAX技术的Web系统的开发</font></span><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><font face="宋体">，</font></span><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><font face="宋体">开发出了模拟Windows桌面、网络相册、爱墙、在线Office、网络硬盘等经典的Web2.0应用，充分展示了AJAX技术的强大。</font></span><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'">WebOS<font face="宋体">是AJAX技术登峰造极制作，跟着作者实打实的学到了一个WebOS的制作，你就是AJAX高手！！！</font></span><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p>
<p class="0" style="text-indent: 21pt"><span style="font-size: 10.5pt; font-family: '宋体'; mso-spacerun: 'yes'"><font face="宋体">值得一提的是《专家手记AJAX开发实战&nbsp;》这本书的代码质量非常高，看了作者的代码不仅能使您学到高手的代码编写习惯，更能使您掌握AJAX的高级开发技能。<br />
&nbsp;&nbsp;&nbsp; 此书是CowNew开源团队第一本团队合作形式出版的图书！<br />
&nbsp;&nbsp;&nbsp;&nbsp;稍后会提供试读电子版给各位。<br />
</font></span></p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 由CowNew开源团队的侯志松（网名：芽孢）编写的《<span class="big">Hibernate完全手册</span>》也已经由机械工业出版社出版。本书从应用程序开发的角度出发，在介绍关系数据库系统知识和面向对象方法的基础上，全面介绍对象关系映射领域的工业标准――Hibernate的基本功能、体系架构、使用方法及高级特性。全书以对象关系映射为主线，分成3个模块：第1～6章介绍对象持久化的基础以及Hibernate的基本配置和使用方法；第7～11章详细介绍如何使用Hibernate实现对象关系的映射，并讨论了使用面向对象方式查询数据的方法和技巧；第12～16章分析了Hibernate中事务、并发、缓存等高级特性，并讨论了如何整合Hibernate和成熟技术，构建企业级应用程序开发框架的技术实践。 </div>
<!--endfragment-->
<img src ="http://www.blogjava.net/huanzhugege/aggbug/205598.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-06-03 16:59 <a href="http://www.blogjava.net/huanzhugege/archive/2008/06/03/205598.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>向四川汶川大地震遇难同胞表示深切哀悼！  </title><link>http://www.blogjava.net/huanzhugege/archive/2008/05/19/201496.html</link><dc:creator>CowNew开源团队</dc:creator><author>CowNew开源团队</author><pubDate>Mon, 19 May 2008 13:05:00 GMT</pubDate><guid>http://www.blogjava.net/huanzhugege/archive/2008/05/19/201496.html</guid><wfw:comment>http://www.blogjava.net/huanzhugege/comments/201496.html</wfw:comment><comments>http://www.blogjava.net/huanzhugege/archive/2008/05/19/201496.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/huanzhugege/comments/commentRss/201496.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/huanzhugege/services/trackbacks/201496.html</trackback:ping><description><![CDATA[向四川汶川大地震遇难同胞表示深切哀悼！&nbsp; <br />
<br />
<p>　　举国哀悼，也许，我们会泪流满面，也许，我们会放声痛哭，但任何困难都难不倒中国人民，我们终会擦干泪水，挺起脊梁，继续前进。</p>
<!--/enpcontent-->
<img src ="http://www.blogjava.net/huanzhugege/aggbug/201496.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/huanzhugege/" target="_blank">CowNew开源团队</a> 2008-05-19 21:05 <a href="http://www.blogjava.net/huanzhugege/archive/2008/05/19/201496.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>