<?xml version="1.0" encoding="UTF-8"?>
  <feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html"><![CDATA[C.Y Go! Go! Go!]]></title>
  <subtitle type="html"><![CDATA[爱自己2010]]></subtitle>
  <id>http://www.cyggg.cn/</id>
  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/" /> 
  <link rel="self" type="application/atom+xml" href="http://www.cyggg.cn/atom.asp" /> 
  <generator uri="http://www.pjhome.net/" version="2.8">PJBlog3</generator> 
  <updated>2010-09-06T10:40:27+08:00</updated>

  <entry>
	  <title type="html"><![CDATA[【ZT】PostMessage与SendMessage的区别]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=7" label="程序人生" /> 
	  <updated>2010-09-06T10:40:27+08:00</updated>
	  <published>2010-09-06T10:40:27+08:00</published>
		  <summary type="html"><![CDATA[在做基于窗口的Windows程序的时候，我们避免不了要向窗口发送消息，有两种方式，一种是PostMessage，另外一种是SendMessage。关于这两个宏，我是通过狠狠的看MSDN才搞明白的，那里讲的是最权威的。它们的区别如下：<br/>1、PostMessage会将消息压入窗口所在线程的消息队列，然后返回；而SendMessage则不经过消息队列，SendMessage可认为是直接调用了该窗口的窗口过程，因此在我们需要获得消息处理后的返回值的时候，就要用到SendMessage。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 例如：当在程序中指定如下使用：PostMessage（hWnd, WM_MSG,0,0），那么当程序执行到PostMessage的时候，仅将消息WM_MSG压入到创建hWnd所指窗口的那个线程的消息队列，然后程序将继续执行下去，而至于程序什么时候响应该消息，则要看那个线程什么时候得到控制权；<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 而指定如下使用：SendMessage（hWnd, WM_MSG,0,0），那么当程序执行到该处时，将发生一次跳转：从当前位置，跳转到hWnd的窗口过程中去响应WM_MSG消息，当消息处理结束，窗口过程返回，程序又将从SendMessage后面继续执行，当然，我们可以获得窗口过程对该消息的处理结果，也即取SendMessage的返回值。（这里只是针对单线程）。<br/> <br/>2、在多线程应用中，PostMessage的用法还是一样，但SendMessage则不同了。如果在线程A中向线程B所创建的一个窗口hWndB发送消息SendMessage（hWndB，WM_MSG，0，0），那么系统将会立即将执行权从线程A切换到线程B，然后在线程B中调用hWndB的窗口过程来处理消息，并且在处理完该消息后，执行权仍然在B手中！这个时候，线程A则暂停在SendMessage处，等待下次线程A获得执行权后才继续执行，并且仍然可以获得消息处理的结果（返回值）。一般，为了避免死锁，在B中对WM_MSG做出处理之前，要加上：<br/>&nbsp;&nbsp;&nbsp;&nbsp; 　if(InSendMessage()) <br/>　　　&nbsp;&nbsp; 　RelpyMessage(lResult)；<br/><br/>即判断：如果该消息是发自另外一个线程，则立即 RelpyMessage，回复消息，参数lResult即是返回值。而如果是在同一个线程内，则InSendMessage()将会返回FALSE。<br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=57" /> 
	  <id>http://www.cyggg.cn/default.asp?id=57</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[沙扒湾之旅2010-08-14]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=6" label="生活点滴" /> 
	  <updated>2010-08-18T14:32:18+08:00</updated>
	  <published>2010-08-18T14:32:18+08:00</published>
		  <summary type="html"><![CDATA[两个人的旅游，一样好玩！<br/><img src="http://www.cyggg.cn/download.asp?id=75" border="0" alt=""/><br/><img src="http://www.cyggg.cn/download.asp?id=76" border="0" alt=""/><br/><img src="http://www.cyggg.cn/download.asp?id=72" border="0" alt=""/><br/><img src="http://www.cyggg.cn/download.asp?id=73" border="0" alt=""/><br/><img src="http://www.cyggg.cn/download.asp?id=74" border="0" alt=""/><br/><img src="http://www.cyggg.cn/download.asp?id=77" border="0" alt=""/><br/><img src="http://www.cyggg.cn/download.asp?id=78" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=56" /> 
	  <id>http://www.cyggg.cn/default.asp?id=56</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[3P车震无码偷拍图]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=9" label="怪嗜收藏" /> 
	  <updated>2010-08-02T11:00:05+08:00</updated>
	  <published>2010-08-02T11:00:05+08:00</published>
		  <summary type="html"><![CDATA[<img src="http://www.cyggg.cn/download.asp?id=71" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=55" /> 
	  <id>http://www.cyggg.cn/default.asp?id=55</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[剪发]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=9" label="怪嗜收藏" /> 
	  <updated>2010-07-30T23:32:52+08:00</updated>
	  <published>2010-07-30T23:32:52+08:00</published>
		  <summary type="html"><![CDATA[<img src="http://www.cyggg.cn/download.asp?id=70" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=54" /> 
	  <id>http://www.cyggg.cn/default.asp?id=54</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[咩叫现实？]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=6" label="生活点滴" /> 
	  <updated>2010-07-27T21:16:55+08:00</updated>
	  <published>2010-07-27T21:16:55+08:00</published>
		  <summary type="html"><![CDATA[Xiao孩|&nbsp;&nbsp;20:59:51<br/> <img src="http://www.cyggg.cn/download.asp?id=68" border="0" alt=""/><br/>日复一日*等&nbsp;&nbsp;21:00:35<br/> <img src="http://www.cyggg.cn/images/smilies/Face_12.gif" border="0" style="margin:0px 0px -2px 0px" alt=""/>5要你<br/>Xiao孩|&nbsp;&nbsp;21:00:58<br/>- -<br/>Xiao孩|&nbsp;&nbsp;21:01:13<br/> <img src="http://www.cyggg.cn/download.asp?id=69" border="0" alt=""/><br/>日复一日*等&nbsp;&nbsp;21:01:27<br/>  <img src="http://www.cyggg.cn/images/smilies/Face_15.gif" border="0" style="margin:0px 0px -2px 0px" alt=""/>我爱你<br/>Xiao孩|&nbsp;&nbsp;21:01:31<br/>- -<br/>Xiao孩|&nbsp;&nbsp;21:01:49<br/>好现实啊- -<br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=53" /> 
	  <id>http://www.cyggg.cn/default.asp?id=53</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[清远黄腾侠漂流2010-07-11]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=6" label="生活点滴" /> 
	  <updated>2010-07-13T12:07:07+08:00</updated>
	  <published>2010-07-13T12:07:07+08:00</published>
		  <summary type="html"><![CDATA[差D猛士漂变壮士漂。。。<br/><br/>漂前留影<br/><img src="http://www.cyggg.cn/download.asp?id=67" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=51" /> 
	  <id>http://www.cyggg.cn/default.asp?id=51</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[【ZT】DirectUI介绍]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=7" label="程序人生" /> 
	  <updated>2010-06-13T10:50:37+08:00</updated>
	  <published>2010-06-13T10:50:37+08:00</published>
		  <summary type="html"><![CDATA[DirectUI 界面库 取名自微软的一个窗口类名“DirectUIHWND”，意为Paint on parent dc directly。即子窗口不以窗口句柄的形式创建，只是逻辑上的窗口，绘制在父窗口之上。微软的“DirectUI”技术广泛的应用于Window XP系统，Media Player播放器，即时通讯工具MSN Messager。<br/><br/>传统的window界面，是用户窗口的层次排列，这种方式有很多局限性。目前的开发环境我们可以很快的使用win32控件构造出标准的干净的界面，但是我们同时也会立刻意识到如果我想像界面更加漂亮，更加炫一点就比较麻烦了。Windows控件提供的Custom-Draw/Ower-Draw技术局限太多，基本上没有透明等效果支持，同时控件布局方面也比较古板。<br/><br/>DirectUI界面库使用XML来描述界面风格，界面布局，使用脚本语言（如 vbscript，javascript，lua）等来作为界面元素和程序逻辑的交互。从这方面来看，DirectUI界面库可以看成是一个迷你的微软 WPF，mozilla XUL，或者Adobe的Flex，这些平台代表的应用程序的发展方向，同时也有很多相似的架构，比如多采用类似XML的方式描述定义界面，使用脚本语言（xul使用javascript，flex使用Action Script）来作为控制界面元素并和程序逻辑之间交互。DirectUI 界面库采用相似的设计，使用xml描述界面，同时使用javascript，或者vbscript来作为界面和逻辑的粘合。在控件设计方面，DirectUI界面库更多的融入了XUL，WPF，Flex等控件设计理念，并没有一味的照搬window标准控件，以期望其成为一款真正使用实用的界面库。<br/><br/>这种界面库设计的最大的好处在于可以很方便的构建高效，绚丽的，非常易于扩展的界面。国外如微软，国内如腾讯，百度等公司的客户端产品多采用这种方式来组织界面，从而很好的将界面和逻辑分离，同时易于实现各种超炫的界面效果如换色，换肤，透明等。 DirectUI 界面库旨在满足客户端界面快速开发的需要，同时融入业界前沿的皮肤技术，为用户创建更加高效，专业的界面。<br/>其他特性：<br/>* 使用xml配置界面控件布局<br/>* 使用脚本(vbscript, jscript)控制控件属性，响应事件<br/>* 使用xml描述界面风格<br/>* XML语法简单，易于学习和掌握<br/>* 基于Win32 API，没有framework依赖。<br/>* 支持改变皮肤色调<br/>* 支持大多数控件透明，包括子窗口透明<br/>* 支持png, bitmap, gif, ico图片格式。支持带透明通道的png图片<br/><br/>DirectUI在微软内部使用的很广泛了，为什么不公布出来呢?估计有三点原因:<br/><br/>1. 最初写这套框架的人太牛了，根本没写什么注释文档，又经过一堆牛人一通乱改，估计能看懂和用好的人不多。发布出来，大家一看原来微软的代码也可以这么乱，对Vista的信心更是大跌。<br/><br/>2. DirectUI只是一个UI框架，没有什么数据库，网络，WebSerivice支持，更别说同MFC,ATL集合，甚至可能冲突，为了顾全MFC的地位，WTL都可以牺牲，DirectUI更别说了。<br/><br/>3.DirectUI是C++开发的，这是什么时代了还用C++开发，有了多快好省的DirectUI，谁还用.NET开发客户端程序，同微软的发展战略不一致呀。<br/><br/>--------------------------------------<br/><br/><a href="http://visualstudiogallery.msdn.microsoft.com/zh-cn/1B69C9FE-E422-4799-9EB5-6AC7034C52E1" target="_blank" rel="external">http://visualstudiogallery.msdn.microsoft.com/zh-cn/1B69C9FE-E422-4799-9EB5-6AC7034C52E1</a><br/>DirectUI GUI库更像是一个Firefox的XUL的一个子集，Adobe Flex的，或Microsoft WPF中，但在Win32平台上运行。它具有以下特点：<br/>1。 DirectUI使用XML进行布局的对话框控件，并使用脚本，JScript中，卢阿提供流量控制和对象操作功能是无法在XML可用。<br/>2。 DiectUI定义stylelike CSS来描述的外观和感觉的应用，因此它是灵活的。您可以加载样式表或更改控制在运行时的外观。<br/>3。它具有很高的绘图效率。<br/>4。 DirectUI可以实现一些非常简单，如透明度，动画，花式效果。<br/>5。 DirectUI分离UI和程序逻辑。您可以处理用户界面相关的逻辑使用XML和脚本。<br/>6。您可以构建一个很好的应用迅速与DirectUI。<br/>7。在Win 32 API，该以便它不依赖于任何框架Directui基地。<br/>8。的色调和饱和度的调整。您可以调整色彩计划顺利进行。<br/>9。支持在运行时改变皮肤，你也可以在运行时使用不同的风格。<br/>10。支持Unicode。<br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=50" /> 
	  <id>http://www.cyggg.cn/default.asp?id=50</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[【ZT】必须要学的东西 ]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=6" label="生活点滴" /> 
	  <updated>2010-06-10T10:47:09+08:00</updated>
	  <published>2010-06-10T10:47:09+08:00</published>
		  <summary type="html"><![CDATA[一、理财的三个环节<br/><br/>1、攒钱：挣一个花两个一辈子都是穷人。一个月强制拿出10%的钱存在银行里，很多人说做不到。那么如果你的公司经营不好，老总要削减开支，给你两个选择，第一是把你开除，补偿两个月工资，第二是把你一千元的工资降到九百元，你能接受哪个方案？99%的人都能接受第二个方案。那么你给自己做个强制储蓄，发下钱后直接将10%的钱存入银行，不迈出这一步，你就永远没有钱花。<br/><br/>2、生钱：基金、股票、债券、不动产<br/><br/>3、护钱：天有不测风云，谁也不知道会出什么事，所以要给自己买保险，保险是理财的重要手段，但不是全部。生钱就像打一口井，为你的水库注入源源不断的水源，但是光有打井还不够，要为水库修个堤坝——意外、住院、大病。因为开车撞人倾家荡产的例子。坐飞机的例子：一个月我有时需要坐十次飞机，每次飞机起飞和降落的时候我都会双手合十，我并不是信什么东西，我只是觉得自己的生命又重新被自己掌握了，因为在天上不知道会发生什么。所以每次坐飞机我都买了88元保50万的意外险，这是给家人的爱心和责任，这50万够我的妻子和孩子生活两年，两年时间她可以改嫁。<br/><br/>一个中心，三个基本点：以管钱为中心，攒钱为起点，生钱为重点，护钱为保障。<br/><br/>二、多少钱可以开始理财？<br/><br/>不在乎多少，一个月省下100元买基金，从20岁存到60岁，是637800元；30岁存到60岁，是22万；40岁起存，7万；50岁，2万。钱生钱是长跑冠军，理财一定要从年轻时开始。钱的秉性：你不爱我，我不爱你。<br/><br/>女孩子，一定要自立，靠山山倒，靠人人跑。<br/><br/>三、如何进行资产配置：个人的水库应该分成三份。<br/><br/>第一份：应急的钱，6个月至一年的生活费。存银行，活期、定期，或者货币市场基金。<br/><br/>第二份：保命的钱，三至五年生活费，定存、国债、商业养老保险。应该是保本不赔，只会多不会少的东西。<br/><br/>第三份：闲钱，五年到十年不用的钱，只有这种钱才可以买股票，买基金，做房地产，或者跟朋友合伙一起开个什么生意，去做这种投资，那么必须是闲钱。<br/><br/>股票：股市如潮水，怎么涨的怎么退。只有潮水退去的时候，我们才能看见谁在裸泳。现在的点位不建议进场，买基金都不是好时段。<br/><br/>能够预测点位的只有三种人：一天才、二疯子、三骗子。<br/><br/>买股票之前先问自己三句话：第一，我有房子和保险了吗？第二，我有急用的钱吗？第三，我准备好坚强的神经和良好的心态吗？<br/><br/>退休的老人不应该炒股，他们在财务和精神上都难以承受股市的涨跌。孝顺的孩子不应该让你的父母炒股。<br/><br/>你见过排着队发财的吗？今年进市场的股民，三年后90%都会成为炮灰，只有10%的人能从股市里赚到钱，这是猫扑上流传的铁律！<br/><br/>四、理财什么时候开始好？<br/><br/>从自立开始。大四的学生就应该开始打工攒房租。成年人再向父母要钱是很丢人的事情，在猫扑上都会被鄙视的。<br/><br/><br/><br/>五、理财的习惯<br/><br/>1、节俭：少打一次车，少做一次美容，吃饭少点一个菜，省下来的钱积攒起来去投资，让钱生钱。富人钱生钱，穷人债养债。节省钱、尊重钱是很多富人的习惯。李嘉诚生活的节俭是尽人皆知的。有一天李嘉诚先生从酒店出来，掏车钥匙时从兜里蹦出一元的硬币掉到地上，李嘉诚弯腰去捡，一个印度保安把钱捡起来递给他，他接过这一元钱，从兜内掏出一百元港币给了保安，又把这一元钱也送给保安。别人很不解，问李嘉诚先生为何这么做，他说“这一百元港元是他给我服务，我给的报酬。如果一元的硬币不捡起来，可能会被车碾到地里，可能会掉到沟里，就会浪费掉，钱是用来花的，但是不可以浪费。”我们常常说富人越有钱越抠，因为他们知道钱来之不易。而没有钱的人往往“穷大方”。<br/><br/>2、记账：每天记帐,不行的话三天记一次也可以啊。有的人在猫扑上花mp都记账，现实里却不去记。<br/><br/>六、理财的误区<br/><br/>1、理财是有钱人的事：穷人、有钱人都能理财，养成良好的习惯，去投资，让钱自己去办些事。<br/><br/>2、忙，没有时间理：有时间打麻将没时间理财？当年毛主席都每天记帐,不要说你没时间，再忙也忙不过主席吧。<br/><br/>3、理财就是买股票买保险：所有钱都拿去买股票那是赌博不是理财。保险公司都说自己的产品既有保障又能储蓄又能投资，那还要基金公司干吗？<br/><br/>4、钱少，理财没什么效果：理财的秘密是“爱惜钱，节省钱，钱生钱，坚持不懈。”<br/><br/>5、我不懂理财：不懂可以学，理财并不难，任何时候开始学都不晚。<br/><br/>6、理财就是发财：理财和发财没有关系。理财是未雨绸缪，帮助你的财富安全、稳健的增长，达到生活目标。<br/><br/>7、理财要从众：理财不能随大流，一定是个性化的。<br/><br/>8、男人和女人理财不一样：理财是人人一样的，女人更容易冲动，女人在理财方面尽量克制一些冲动消费就可以了，如果完全不冲动，就不再可爱了。男人“分析”，女人“感觉”。<br/><br/>七、理财的五个一工程：<br/><br/>1、一生恪守量入为出<br/><br/>拳王泰森从20岁开始打拳，到40岁时挣了将近4亿美元，但他花钱无度，别墅有100多个房间，几十辆跑车，养老虎当宠物，结果到2004年底，他破产的时候还欠了国家税务局1000万美元。如果你不是含着金钥匙出生，享受应该是40岁以后的事，年轻时必须付出、拼搏，老来穷才是最苦的事情。<br/><br/>2、不要梦想一夜暴富<br/><br/>天上没有馅饼，天上有什么？雨、雪、沙尘暴，偶尔会掉下来一个花盆什么的，一定不会有馅饼掉下来的，中国有句俗话“财不进急门”。 一年40%-50%的机会不可信，要想想别人的动机，听起来过于完美的东西往往不是真的。很多中了彩票头奖的人十年后还是贫困，因为买大房子，买车，钻出来几十个穷亲戚。精神上也受不了，像范进中举，一下子厥过去。你赚个MP都要一天天在猫扑HI里打卡！<br/><br/>当别人给你貌似很好的投资机会时，问自己六个问题（举例产权酒店）：1、谁在卖我东西，对方的信誉如何？2、我的钱干啥去了？3、我挣的是什么钱，盈利模式。4、收益率合理吗？年收益1%-5%低，5%-8%中等，8%以上高。5、如果我不投了，卖得出去吗？6、如果卖不出去，可以自用吗？六个问题如果有两个以上有疑问，就不大可信。<br/><br/>3、不要让债务缠住一生<br/><br/>房奴、车奴、卡奴。中国的负翁大多28-35岁。例如在湖南买100平的房子，30万，首付20%6万，契税等2万，8万装修，2万家电，2万内饰细软，没有20万没法住进去。月还款应该在收入的30%以下，50%会非常难受。想好你是否具备财务能力再买房，努着买房就是房奴。<br/><br/>车奴更甚，车子是持续消费。日本的富翁每天拎着饭盒坐公交。信用卡是财务鸦片。<br/><br/>检查观众的钱包：大学生，月消费1800。北京硕士毕业月薪3000，本科2000，年轻人不要对未来生活抱着虚无的幻想。<br/><br/>改变生活要从小钱开始还，还卡——还车——还房——攒钱——投资。<br/><br/>你永远算不过银行，摆脱财务要还本而不是还息。<br/><br/>4、一夫一妻一个孩<br/><br/>结婚不是最大的财就是最大的债。所以不要轻易结婚与轻易离婚。<br/><br/>5、专心一项投资<br/><br/>中国有一句老话叫一招鲜，吃遍天，一生做好一件投资你就会过上美满和幸福的生活，不是去赌。不熟不做，不懂不投，不要从众。有些钱不是你的]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=49" /> 
	  <id>http://www.cyggg.cn/default.asp?id=49</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[【ZT】使用Excel COM组件导出数据后释放Excel资源]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=7" label="程序人生" /> 
	  <updated>2010-06-01T11:37:45+08:00</updated>
	  <published>2010-06-01T11:37:45+08:00</published>
		  <summary type="html"><![CDATA[以前做过的项目曾经出现过此问题，解决方法是杀掉excel.exe的进程，指标不治本，且不安全。<br/>今天偶尔逛csdn看到一解决此问题的方法，特此共享。（注意：暂时只测试过office03能通过）<br/><br/>【ZT】内容：<br/>到底是为什么无法释放Excel呢？<br/>最后发现一篇MSDN上文章：<a href="http://support.microsoft.com/kb/317109" target="_blank" rel="external">http://support.microsoft.com/kb/317109</a><br/>大家可以看看！<br/><br/>文章的意思是创建的每个对象都得释放掉，Excel进程才会关闭。<br/>如果你写的代码导出Excel老是无法关闭Excel,可以看看我下面的代码。<br/><br/>private void ExportExcel(DataTable dt, string _strTitle)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string newpath = Server.MapPath(&#34;.&#34;) + @&#34;\&#34; + Guid.NewGuid() + &#34;.xls&#34;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_excel.Application app = new _excel.Application();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_excel.Workbooks wbooks = app.Workbooks;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_excel.Workbook wbook = wbooks.Add(System.Reflection.Missing.Value);<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//VS2003中最好不要如下创建<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// _excel.Workbook wbook = app.Workbooks.Add(System.Reflection.Missing.Value);<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_excel.Worksheet tsheet = (_excel.Worksheet)wbook.ActiveSheet;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//为 tsheet.Cells 创建 Range ，方便释放资源<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_excel.Range rans = (_excel.Range)tsheet.Cells;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//创建ran为了下面赋值时候使用<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_excel.Range ran = null;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int i = 0; i &lt; dt.Rows.Count; i++)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (int j = 0; j &lt; dt.Columns.Count; j++)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ran = (_excel.Range)rans[i + 1, j + 1];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ran.Value2 = dt.Rows[i][j];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAR(ran);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//不要如下方式赋值<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//tsheet.Cells[i + 1, j + 1] = dt.Rows[i][j];<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAR(rans);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAR(tsheet);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//保存信息<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wbook.Close(true,newpath, System.Reflection.Missing.Value);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAR(wbook);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAR(wbooks);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;app.Quit();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAR(app);<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// 释放资源<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;/summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;param name=&#34;o&#34;&gt;&lt;/param&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;private void NAR(object o)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.Runtime.InteropServices.Marshal.ReleaseComObject(o);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;catch { }<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;finally<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;o = null;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/><br/><br/><br/>经过测试VS2003 和VS2005中都可以正常的自动关闭Excel。<br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=48" /> 
	  <id>http://www.cyggg.cn/default.asp?id=48</id>
  </entry>	
		
  <entry>
	  <title type="html"><![CDATA[长隆香江野生动物园]]></title>
	  <author>
		 <name>veekchen</name>
		 <uri>http://www.cyggg.cn/</uri>
		 <email>veekchen@hotmail.com</email>
	  </author>
	  <category term="" scheme="http://www.cyggg.cn/default.asp?cateID=6" label="生活点滴" /> 
	  <updated>2010-05-17T11:56:30+08:00</updated>
	  <published>2010-05-17T11:56:30+08:00</published>
		  <summary type="html"><![CDATA[无想象中既感多也睇<br/>不过好大啊。。。累死人鸟。。。<br/><img src="http://www.cyggg.cn/download.asp?id=65" border="0" alt=""/><br/>]]></summary>
	  <link rel="alternate" type="text/html" href="http://www.cyggg.cn/article.asp?id=47" /> 
	  <id>http://www.cyggg.cn/default.asp?id=47</id>
  </entry>	
		
</feed>
