﻿<?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>博客园-经霄</title><link>http://www.cnblogs.com/sorosjing/</link><description /><language>zh-cn</language><lastBuildDate>Sun, 05 Jul 2009 02:37:27 GMT</lastBuildDate><pubDate>Sun, 05 Jul 2009 02:37:27 GMT</pubDate><ttl>60</ttl><item><title>Microsoft ProClarity 6.3 releases to manufacturing</title><link>http://www.cnblogs.com/sorosjing/archive/2007/01/23/627850.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Tue, 23 Jan 2007 05:21:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2007/01/23/627850.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/627850.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2007/01/23/627850.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/627850.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/627850.html</trackback:ping><description><![CDATA[Microsoft ProClarity 6.3(&nbsp;Microsoft ProClarity Analytics Server 6.3 English and Microsoft ProClarity Desktop Professional 6.3 English) has been released to&nbsp;manufacturingThis is the first release by the ProClarity team since Microsoft acquired ProClarity in May, 2006.
<p><strong>What is new in Version 6.3<br></strong><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Version 6.3 contains a number of security fixes as a result of following the Security Development Lifecycle (SDL)<br><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Support for the following products and platforms:<br><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Microsoft Office 2007<br><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Internet Explorer 7<br><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Microsoft Windows Vista<br><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Microsoft Office SharePoint Server 2007<br><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Added support for Microsoft&nbsp; SQL 2005 local cube files<br><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Business Reporter for Excel has been discontinued. The replacement product for BRE is Excel 2007, which has greater capabilities for free-form placement and formatting of OLAP data. See attached slide deck for details.<br><span><span>&#183;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Active (live) export to PowerPoint has been removed from the product.&nbsp;</p>
<p><strong>Version 6.3 Packaging</strong></p>
<p>Two CDs:</p>
<p><span><span>1.<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Microsoft ProClarity Analytics Server CD:&nbsp;&nbsp; Analytics Server, Dashboard Server, Business Logic Server and Web Professional</p>
<p><span><span>2.<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span>Microsoft ProClarity Desktop Professional CD:&nbsp; Desktop Professional</p>
<img src ="http://www.cnblogs.com/sorosjing/aggbug/627850.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47987/" target="_blank">预测：Twitter最可能收购的十家公司</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Windows Services中使用MSBuild实现Build Automation Management</title><link>http://www.cnblogs.com/sorosjing/archive/2006/09/19/508490.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Tue, 19 Sep 2006 06:38:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2006/09/19/508490.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/508490.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2006/09/19/508490.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/508490.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/508490.html</trackback:ping><description><![CDATA[<p>Microsoft Build Engine <span>（</span>MSBuild<span>）是</span>Microsoft<span>和</span>Visual Studio<span>的新的生成平台。它使得开发人员能够在没有安装</span>Visual Studio <span>的环境下进行编译。</span></p>
<p>Windows Service<span>应用程序是一种需要长期运行的应用程序，它没有用户界面，并且也不会产生任何可视化的输出（任何用户消息都会被写入</span>Windows<span>事件日志或者其它自定义的日志中）。因此，它特别适合于服务器环境。在计算机启动时，</span>Windows Service<span>就会自动开始运行（需要设置服务类型为</span>Automatic<span>），它们不需要用户一定登录才行。</span></p>
<p>Build Automation Management<span>是为了标准化企业的自动化编译过程。通过</span>Windows Service<span>与</span>MSBuild<span>的结合实现企业的</span>Automation Build<span>。</span>Build Automation Management<span>可以处理</span>scheduled &nbsp;Build,<span>也可以处理</span>unscheduled build<span>。</span></p>
<p><span>创建</span>Windows Service</p>
<p><span>将</span>Windows Service<span>的</span>Account<span>设置为</span>User<span>。其它账户可能无权使用</span>Proces<span>。</span></p>
<p><span>在</span>Windows Service<span>中添加</span>Build Code<span>。</span></p>
<p>MSBuild.exe<span>位于</span>%SystemRoot%\Micorsoft .NET\Framework\V2.0.502727<span>目录下。因此，获取该目录所谓的绝对路径。</span></p>
<p><span><span>&nbsp;&nbsp; </span><span>string</span> systemRoot = <span>Path</span>.GetDirectoryName(<span>Environment</span>.SystemDirectory);</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>string</span> FrameworkPath = systemRoot + <span>@"\Microsoft.NET\Framework"</span>;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>if</span> (!<span>Directory</span>.Exists(FrameworkPath))</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>{</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>throw</span> <span>new</span> <span>DirectoryNotFoundException</span>(<span>"The framework directory could not be located."</span>);</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>string</span> msBuildDir = FrameworkPath + <span>@"\v2.0.50727"</span>;<span>&nbsp;&nbsp;&nbsp; </span></span></p>
<p>&nbsp;</p>
<p><span>获得所需要编译的设置选项。例如，需要编译</span><span>Debug</span><span>和</span><span>Release</span><span>两个版本。并将这些选项存放在一个临时变量中。</span><span><span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>string</span>[] configs = <span>new</span> <span>string</span>[] { <span>"Debug"</span>, <span>"Release"</span>, };<span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p><span>获得项目路径并调用</span><span>MSBuild</span><span>进行编译。</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>string</span> projectPath = <span>@"e:\temp\test\test.sln"</span>;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>eventLog1.WriteEntry(<span>"Start Build"</span>);</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>foreach</span> (<span>string</span> str <span>in</span> configs)</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>{</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>Process</span> process = <span>new</span> <span>Process</span>();</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>process.StartInfo.FileName = msBuildDir + <span>@"\msbuild.exe"</span>;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>process.StartInfo.Arguments = projectPath + <span>@" /p:Configuration="</span> + str + <span>"\""</span>;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span>Console</span>.WriteLine(process.StartInfo.Arguments);</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>process.Start();</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>}<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <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.cnblogs.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;systemRoot&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;Path.GetDirectoryName(Environment.SystemDirectory);<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;FrameworkPath&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;systemRoot&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">@"</span><span style="COLOR: #000000">\Microsoft.NET\Framework</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #000000">!</span><span style="COLOR: #000000">Directory.Exists(FrameworkPath))<br><img id=Codehighlighter1_215_332_Open_Image onclick="this.style.display='none'; Codehighlighter1_215_332_Open_Text.style.display='none'; Codehighlighter1_215_332_Closed_Image.style.display='inline'; Codehighlighter1_215_332_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_215_332_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_215_332_Closed_Text.style.display='none'; Codehighlighter1_215_332_Open_Image.style.display='inline'; Codehighlighter1_215_332_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_215_332_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_215_332_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">throw</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;DirectoryNotFoundException(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">The&nbsp;framework&nbsp;directory&nbsp;could&nbsp;not&nbsp;be&nbsp;located.</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;msBuildDir&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;FrameworkPath&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">@"</span><span style="COLOR: #000000">\v2.0.50727</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img id=Codehighlighter1_452_991_Open_Image onclick="this.style.display='none'; Codehighlighter1_452_991_Open_Text.style.display='none'; Codehighlighter1_452_991_Closed_Image.style.display='inline'; Codehighlighter1_452_991_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_452_991_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_452_991_Closed_Text.style.display='none'; Codehighlighter1_452_991_Open_Image.style.display='inline'; Codehighlighter1_452_991_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">[]&nbsp;configs&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">[]&nbsp;</span><span id=Codehighlighter1_452_991_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_452_991_Open_Text><span style="COLOR: #000000">{&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Debug</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Release};&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;projectPath&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">@"</span><span style="COLOR: #000000">e:\temp\test\test.sln</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eventLog1.WriteEntry(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Start&nbsp;Build</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">foreach</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;str&nbsp;</span><span style="COLOR: #0000ff">in</span><span style="COLOR: #000000">&nbsp;configs)<br><img id=Codehighlighter1_649_982_Open_Image onclick="this.style.display='none'; Codehighlighter1_649_982_Open_Text.style.display='none'; Codehighlighter1_649_982_Closed_Image.style.display='inline'; Codehighlighter1_649_982_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_649_982_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_649_982_Closed_Text.style.display='none'; Codehighlighter1_649_982_Open_Image.style.display='inline'; Codehighlighter1_649_982_Open_Text.style.display='inline';" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_649_982_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_649_982_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Process&nbsp;process&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;Process();<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;process.StartInfo.FileName&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;msBuildDir&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">@"</span><span style="COLOR: #000000">\msbuild.exe</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;process.StartInfo.Arguments&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;projectPath&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">@"</span><span style="COLOR: #000000">&nbsp;/p:Configuration=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;str&nbsp;</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</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.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(process.StartInfo.Arguments);<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;process.Start();<br><img src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></div>
</span></span></span>
<img src ="http://www.cnblogs.com/sorosjing/aggbug/508490.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47986/" target="_blank">网易澄清:与暴雪合资公司仅提供技术支持</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>VSS Object Model</title><link>http://www.cnblogs.com/sorosjing/archive/2006/09/06/496286.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Wed, 06 Sep 2006 05:24:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2006/09/06/496286.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/496286.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2006/09/06/496286.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/496286.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/496286.html</trackback:ping><description><![CDATA[<img height=671 alt="" src="http://www.cnblogs.com/images/cnblogs_com/sorosjing/ObjectModel.JPG" width=1024 border=0>
<img src ="http://www.cnblogs.com/sorosjing/aggbug/496286.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47985/" target="_blank">杰克逊悼念仪式或成史上最大规模Web活动</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Google Service</title><link>http://www.cnblogs.com/sorosjing/archive/2006/05/10/396476.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Wed, 10 May 2006 09:09:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2006/05/10/396476.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/396476.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2006/05/10/396476.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/396476.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/396476.html</trackback:ping><description><![CDATA[<span><font size=2>&nbsp; Google Ad Sense&nbsp;&nbsp;</font><a href="https://www.google.com/adsense/" target=_blank><font color=#000080 size=2>https://www.google.com/adsense/</font></a><font size=2> <br>&nbsp; Google AdWords&nbsp;&nbsp;</font><a href="https://adwords.google.com/select" target=_blank><font size=2>https://adwords.google.com/select</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>分析</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://google.com/analytics/" target=_blank><font color=#000080 size=2>http://google.com/analytics/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>问答</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://answers.google.com/" target=_blank><font color=#000080 size=2>http://answers.google.com/</font></a><font size=2> <br>&nbsp; GoogleBase&nbsp;&nbsp;&nbsp;</font><a href="http://base.google.com/" target=_blank><font color=#000080 size=2>http://base.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>博客搜索</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://blogsearch.google.com/" target=_blank><font color=#000080 size=2>http://blogsearch.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>书签</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://www.google.com/bookmarks/" target=_blank><font color=#000080 size=2>http://www.google.com/bookmarks/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>图书搜索</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://books.google.com/" target=_blank><font color=#000080 size=2>http://books.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>日历</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://google.com/calendar/" target=_blank><font color=#000080 size=2>http://google.com/calendar/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>目录</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://catalogs.google.com/" target=_blank><font color=#000080 size=2>http://catalogs.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>代码</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://code.google.com/" target=_blank><font size=2>http://code.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>桌面工具条</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://deskbar.google.com/" target=_blank><font color=#000080 size=2>http://deskbar.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>桌面</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://desktop.google.com/" target=_blank><font color=#000080 size=2>http://desktop.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>网页目录</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://www.google.com/dirhp" target=_blank><font color=#000080 size=2>http://www.google.com/dirhp</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>地球</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://earth.google.com/" target=_blank><font color=#000080 size=2>http://earth.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>股票</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://finance.google.com/" target=_blank><font color=#000080 size=2>http://finance.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>网上论坛</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://groups.google.com/" target=_blank><font color=#000080 size=2>http://groups.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>图片搜索</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://images.google.com/" target=_blank><font color=#000080 size=2>http://images.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>实验室</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://labs.google.com/" target=_blank><font color=#000080 size=2>http://labs.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>本地搜索</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://local.google.com/" target=_blank><font color=#000080 size=2>http://local.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>地图</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://maps.google.com/" target=_blank><font color=#000080 size=2>http://maps.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>火星</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://www.google.com/mars/" target=_blank><font color=#000080 size=2>http://www.google.com/mars/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>移动</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://mobile.google.com/" target=_blank><font color=#000080 size=2>http://mobile.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>月球</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://moon.google.com/" target=_blank><font color=#000080 size=2>http://moon.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>电影</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://www.google.com/movies" target=_blank><font size=2>http://www.google.com/movies</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>音乐</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://www.google.com/musicsearch" target=_blank><font size=2>http://www.google.com/musicsearch</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>新闻</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://news.google.com/" target=_blank><font color=#000080 size=2>http://news.google.com/</font></a><font size=2>&nbsp; <br>&nbsp; Google</font></span><span><font face=宋体 size=2>软件包</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://pack.google.com/" target=_blank><font color=#000080 size=2>http://pack.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>网页创作</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://pages.google.com/" target=_blank><font color=#000080 size=2>http://pages.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>个性化主页</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://www.google.com/ig" target=_blank><font color=#000080 size=2>http://www.google.com/ig</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>个性化搜索</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://labs.google.com/personalized" target=_blank><font color=#000080 size=2>http://labs.google.com/personalized</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>阅读器</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://www.google.com/reader" target=_blank><font color=#000080 size=2>http://www.google.com/reader</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>学术搜索</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://scholar.google.com/" target=_blank><font color=#000080 size=2>http://scholar.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>搜索历史</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://www.google.com/searchhistory" target=_blank><font color=#000080 size=2>http://www.google.com/searchhistory</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>短信服务</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://www.google.com/sms/" target=_blank><font color=#000080 size=2>http://www.google.com/sms/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>提示</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://www.google.com/webhp?complete=1" target=_blank><font color=#000080 size=2>http://www.google.com/webhp?complete=1</font></a><font size=2> <br>&nbsp; GoogleTalk&nbsp;&nbsp;&nbsp;</font><a href="http://talk.google.com/" target=_blank><font color=#000080 size=2>http://talk.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>工具条</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://toolbar.google.com/" target=_blank><font color=#000080 size=2>http://toolbar.google.com/</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>旅行计划者</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://www.google.com/transit" target=_blank><font color=#000080 size=2>http://www.google.com/transit</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>翻译工具</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://www.google.com/translate_t" target=_blank><font color=#000080 size=2>http://www.google.com/translate_t</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>视频</font></span><span><font size=2>&nbsp;&nbsp;&nbsp;</font><a href="http://video.google.com/" target=_blank><font color=#000080 size=2>http://video.google.com</font></a><font size=2> <br>&nbsp; Google</font></span><span><font face=宋体 size=2>网页加速器</font></span><span><font size=2>&nbsp;&nbsp;</font><a href="http://webaccelerator.google.com/" target=_blank><font color=#000080 size=2>http://webaccelerator.google.com</font></a><font size=2> <br>&nbsp; Google Web API&nbsp;&nbsp;</font><a href="http://www.google.com/apis" target=_blank><font color=#000080 size=2>http://www.google.com/apis</font></a><font size=2> <br></font></span><font size=2><span>&nbsp; Google </span><span><font face=宋体>大学搜索</font></span><span> <span><a href="http://www.google.com/intl/zh-CN/options/universities.htmlGoogle">http://www.google.com/intl/zh-CN/options/universities.html<br></span></span></font><font size=2></a><span><font face=宋体><span>&nbsp; Google</span>邮箱服务</font></span><span> <span><a href="http://www.gmail.com/"><font color=#000080>http://www.gmail.com</font></a></span></span></font><font size=2><span><span><font color=#000000><span><br>&nbsp; Google</span><span><font face=宋体>特色</font></span><span> <span><a href="http://www.google.com/intl/zh-CN/features.html">http://www.google.com/intl/zh-CN/features.html</a></span></span><span><br>&nbsp; Google</span><span><font face=宋体>网页搜索</font></span><span>&nbsp;&nbsp;<a href="http://www.google.com/" target=_blank>http://www.google.com</a></span></font></span></span></font> 
<img src ="http://www.cnblogs.com/sorosjing/aggbug/396476.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47984/" target="_blank">《商业周刊》:Mozilla的志愿者开发模式被复制</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>使用反射动态创建类的实例</title><link>http://www.cnblogs.com/sorosjing/archive/2006/05/10/396453.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Wed, 10 May 2006 08:55:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2006/05/10/396453.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/396453.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2006/05/10/396453.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/396453.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/396453.html</trackback:ping><description><![CDATA[<font size=2>
<p></font><font size=2>&nbsp;</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">interface</span><span style="COLOR: #000000">&nbsp;IWriter<br><img id=Codehighlighter1_32_60_Open_Image onclick="this.style.display='none'; Codehighlighter1_32_60_Open_Text.style.display='none'; Codehighlighter1_32_60_Closed_Image.style.display='inline'; Codehighlighter1_32_60_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_32_60_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_32_60_Closed_Text.style.display='none'; Codehighlighter1_32_60_Open_Image.style.display='inline'; Codehighlighter1_32_60_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_32_60_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_32_60_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;Write();<br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;LogWriter:IWriter<br><img id=Codehighlighter1_106_370_Open_Image onclick="this.style.display='none'; Codehighlighter1_106_370_Open_Text.style.display='none'; Codehighlighter1_106_370_Closed_Image.style.display='inline'; Codehighlighter1_106_370_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_106_370_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_106_370_Closed_Text.style.display='none'; Codehighlighter1_106_370_Open_Image.style.display='inline'; Codehighlighter1_106_370_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_106_370_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_106_370_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;typeID;<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><br><img id=Codehighlighter1_152_364_Closed_Image onclick="this.style.display='none'; Codehighlighter1_152_364_Closed_Text.style.display='none'; Codehighlighter1_152_364_Open_Image.style.display='inline'; Codehighlighter1_152_364_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top><img id=Codehighlighter1_152_364_Open_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_152_364_Open_Text.style.display='none'; Codehighlighter1_152_364_Closed_Image.style.display='inline'; Codehighlighter1_152_364_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_152_364_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">IWriter&nbsp;Members</span><span id=Codehighlighter1_152_364_Open_Text style="DISPLAY: none"><span style="COLOR: #0000ff">#region</span><span style="COLOR: #000000">&nbsp;IWriter&nbsp;Members</span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;Write()<br><img id=Codehighlighter1_213_344_Open_Image onclick="this.style.display='none'; Codehighlighter1_213_344_Open_Text.style.display='none'; Codehighlighter1_213_344_Closed_Image.style.display='inline'; Codehighlighter1_213_344_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_213_344_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_213_344_Closed_Text.style.display='none'; Codehighlighter1_213_344_Open_Image.style.display='inline'; Codehighlighter1_213_344_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_213_344_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_213_344_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;new&nbsp;Exception("The&nbsp;method&nbsp;or&nbsp;operation&nbsp;is&nbsp;not&nbsp;implemented.");</span><span style="COLOR: #008000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(typeID);<br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">#endregion</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
<p>&nbsp;</p>
<p></font><font size=2>&nbsp;<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.cnblogs.com/images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&nbsp;&nbsp;Assembly&nbsp;assembly&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;Assembly.GetExecutingAssembly();<br><img src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Module[]&nbsp;modules&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;assembly.GetModules();<br><img src="http://www.cnblogs.com/images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(modules&nbsp;</span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_154_1166_Open_Image onclick="this.style.display='none'; Codehighlighter1_154_1166_Open_Text.style.display='none'; Codehighlighter1_154_1166_Closed_Image.style.display='inline'; Codehighlighter1_154_1166_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_154_1166_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_154_1166_Closed_Text.style.display='none'; Codehighlighter1_154_1166_Open_Image.style.display='inline'; Codehighlighter1_154_1166_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_154_1166_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_154_1166_Open_Text><span style="COLOR: #000000">{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">foreach</span><span style="COLOR: #000000">&nbsp;(Module&nbsp;obj&nbsp;</span><span style="COLOR: #0000ff">in</span><span style="COLOR: #000000">&nbsp;modules)<br><img id=Codehighlighter1_239_1152_Open_Image onclick="this.style.display='none'; Codehighlighter1_239_1152_Open_Text.style.display='none'; Codehighlighter1_239_1152_Closed_Image.style.display='inline'; Codehighlighter1_239_1152_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_239_1152_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_239_1152_Closed_Text.style.display='none'; Codehighlighter1_239_1152_Open_Image.style.display='inline'; Codehighlighter1_239_1152_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_239_1152_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_239_1152_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type[]&nbsp;types&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;obj.GetTypes();<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">foreach</span><span style="COLOR: #000000">&nbsp;(Type&nbsp;objType&nbsp;</span><span style="COLOR: #0000ff">in</span><span style="COLOR: #000000">&nbsp;types)<br><img id=Codehighlighter1_364_1133_Open_Image onclick="this.style.display='none'; Codehighlighter1_364_1133_Open_Text.style.display='none'; Codehighlighter1_364_1133_Closed_Image.style.display='inline'; Codehighlighter1_364_1133_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_364_1133_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_364_1133_Closed_Text.style.display='none'; Codehighlighter1_364_1133_Open_Image.style.display='inline'; Codehighlighter1_364_1133_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_364_1133_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_364_1133_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(objType.Name&nbsp;</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">LogWriter</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_447_1111_Open_Image onclick="this.style.display='none'; Codehighlighter1_447_1111_Open_Text.style.display='none'; Codehighlighter1_447_1111_Closed_Image.style.display='inline'; Codehighlighter1_447_1111_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_447_1111_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_447_1111_Closed_Text.style.display='none'; Codehighlighter1_447_1111_Open_Image.style.display='inline'; Codehighlighter1_447_1111_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_447_1111_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_447_1111_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">try</span><span style="COLOR: #000000"><br><img id=Codehighlighter1_509_911_Open_Image onclick="this.style.display='none'; Codehighlighter1_509_911_Open_Text.style.display='none'; Codehighlighter1_509_911_Closed_Image.style.display='inline'; Codehighlighter1_509_911_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_509_911_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_509_911_Closed_Text.style.display='none'; Codehighlighter1_509_911_Open_Image.style.display='inline'; Codehighlighter1_509_911_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_509_911_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_509_911_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_666_673_Open_Image onclick="this.style.display='none'; Codehighlighter1_666_673_Open_Text.style.display='none'; Codehighlighter1_666_673_Closed_Image.style.display='inline'; Codehighlighter1_666_673_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_666_673_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_666_673_Closed_Text.style.display='none'; Codehighlighter1_666_673_Open_Image.style.display='inline'; Codehighlighter1_666_673_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objType.InvokeMember(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">typeID</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,&nbsp;BindingFlags.SetField&nbsp;</span><span style="COLOR: #000000">|</span><span style="COLOR: #000000">&nbsp;BindingFlags.Public&nbsp;</span><span style="COLOR: #000000">|</span><span style="COLOR: #000000">&nbsp;BindingFlags.Static,&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">object</span><span style="COLOR: #000000">[]&nbsp;</span><span id=Codehighlighter1_666_673_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_666_673_Open_Text><span style="COLOR: #000000">{&nbsp;</span><span style="COLOR: #000000">1200</span><span style="COLOR: #000000">&nbsp;}</span></span><span style="COLOR: #000000">);<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IWriter&nbsp;writer&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;&nbsp;(IWriter)Activator.CreateInstance(objType,&nbsp;</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">);<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;writer.Write();<br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">catch</span><span style="COLOR: #000000">&nbsp;(Exception&nbsp;err)<br><img id=Codehighlighter1_991_1085_Open_Image onclick="this.style.display='none'; Codehighlighter1_991_1085_Open_Text.style.display='none'; Codehighlighter1_991_1085_Closed_Image.style.display='inline'; Codehighlighter1_991_1085_Closed_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_991_1085_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_991_1085_Closed_Text.style.display='none'; Codehighlighter1_991_1085_Open_Image.style.display='inline'; Codehighlighter1_991_1085_Open_Text.style.display='inline';" src="http://www.cnblogs.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_991_1085_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.cnblogs.com/Images/dot.gif"></span><span id=Codehighlighter1_991_1085_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(err.Message);<br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.cnblogs.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></div>
<br><br>Useful classes:<br><br><span style="FONT-SIZE: 14pt">Assembly<br>Module<br>Type<br>Activator<br>System.Reflection namespace is essential before using these classes!</span></font> 
<img src ="http://www.cnblogs.com/sorosjing/aggbug/396453.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47984/" target="_blank">《商业周刊》:Mozilla的志愿者开发模式被复制</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>AS2005中的维度安全性简介【转】</title><link>http://www.cnblogs.com/sorosjing/archive/2006/01/12/315981.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Thu, 12 Jan 2006 06:53:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2006/01/12/315981.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/315981.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2006/01/12/315981.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/315981.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/315981.html</trackback:ping><description><![CDATA[摘要:  Introduction to Dimension Security in Analysis Services 2005IntroductionAnalysis Services 2005 has two security models for securing data: dimension security and cell security. Dimension security is u&nbsp;&nbsp;<a href='http://www.cnblogs.com/sorosjing/archive/2006/01/12/315981.html'>阅读全文</a><img src ="http://www.cnblogs.com/sorosjing/aggbug/315981.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47977/" target="_blank">Mono 的Virtual PC 虚拟机</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>使用MS FlexGrid Control显示多维数据集</title><link>http://www.cnblogs.com/sorosjing/archive/2006/01/12/315735.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Thu, 12 Jan 2006 01:53:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2006/01/12/315735.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/315735.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2006/01/12/315735.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/315735.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/315735.html</trackback:ping><description><![CDATA[<P>1&nbsp; 添加FlexGrid控件 <BR>&nbsp;&nbsp;&nbsp;&nbsp; 在vs 2005的ToolBox中单击鼠标右键，在弹出的快捷菜单中选择Choose Items <BR><BR><BR>&nbsp;&nbsp;&nbsp;&nbsp; <IMG height=444 src="http://www.cnblogs.com/images/cnblogs_com/sorosjing/ChooseItem.JPG" width=512 border=0> <BR><BR>&nbsp;&nbsp;&nbsp; 在弹出的【Choose ToolBox Items】对话框中，选中【Com Components】选项卡，在列表框中选择【Microsoft Flex Grid Control version 6.0】<BR>&nbsp;&nbsp;&nbsp;&nbsp;<IMG src="http://www.cnblogs.com/images/cnblogs_com/sorosjing/FlexGrid.JPG" border=0><BR>&nbsp;&nbsp;&nbsp; 单击【OK】，Microsoft FlexGrid控件则会添加到ToolBox中。<BR>&nbsp;&nbsp;&nbsp; <IMG src="http://www.cnblogs.com/images/cnblogs_com/sorosjing/FlexGridItem1.JPG" border=0><BR>&nbsp;&nbsp; </P>
<P>2&nbsp;&nbsp; 使用MSFlexGrid显示多维数据集合<BR>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; private void DisplayCellSet(CellSet cs)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cellSetGrid.Redraw = false;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try<BR>&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; cellSetGrid.Clear();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AxisCollection axes = cs.Axes;&nbsp;&nbsp;&nbsp; //获取轴的集合<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int axesCount = axes.Count;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (axesCount &gt; 2)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; throw new Exception("This sample application do not support ");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Set columns = null;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Set rows = null;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int columncount = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int rowcount = 1;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int fixedColumnCount = 0;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int fixedRowCount = 0;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int gridRow = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int gridColumn = 0;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (axesCount &gt; 0)<BR>&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;&nbsp;&nbsp;&nbsp; columns = axes[0].Set;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; columncount = columns.Tuples.Count;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fixedRowCount += columns.Hierarchies.Count;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//固定行的个数<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (axesCount &gt; 1)<BR>&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;&nbsp;&nbsp;&nbsp; rows = axes[1].Set;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rowcount = rows.Tuples.Count;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fixedColumnCount += rows.Hierarchies.Count;&nbsp;&nbsp; //固定列的个数<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cellSetGrid.Cols = fixedColumnCount + columncount;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//设置控件的列数<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cellSetGrid.FixedCols = fixedColumnCount;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //设置控件的固定的列数</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cellSetGrid.Rows = fixedRowCount + rowcount;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //设置控件的行数<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cellSetGrid.FixedRows = fixedRowCount;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //设置控件的可变的</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gridColumn = fixedColumnCount;</P>
<P>&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; foreach (Tuple tuple in columns.Tuples)<BR>&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;&nbsp;&nbsp;&nbsp; gridRow = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach (Member member in tuple.Members)<BR>&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cellSetGrid.set_TextMatrix(gridRow, gridColumn, member.Caption);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gridRow++;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp; cellSetGrid.set_ColWidth(1, 2000);<BR>&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp; gridColumn++;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR></P>
<P>&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; if (rows != null)<BR>&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;&nbsp;&nbsp;&nbsp; gridRow = fixedRowCount;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach (Tuple tuple in rows.Tuples)<BR>&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gridColumn = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; foreach (Member member in tuple.Members)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cellSetGrid.set_TextMatrix(gridRow, gridColumn, member.Caption);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gridColumn++;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gridRow++;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR><BR>&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;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //填充数据<BR></P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int iCell = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (gridRow = fixedRowCount; gridRow &lt; cellSetGrid.Rows; gridRow++)<BR>&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;&nbsp;&nbsp;&nbsp; for (gridColumn = fixedColumnCount; gridColumn &lt; cellSetGrid.Cols; gridColumn++)<BR>&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (cs.Cells[iCell].Value != null)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cellSetGrid.set_TextMatrix(gridRow, gridColumn, cs.Cells[iCell].Value.ToString());</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; iCell++;<BR>&nbsp;&nbsp;&nbsp;&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; }<BR></P>
<P>&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; int maxwidth = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (gridColumn = 0; gridColumn &lt; cellSetGrid.Cols; gridColumn++)<BR>&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;&nbsp;&nbsp;&nbsp; for (gridRow = 0; gridRow &lt; cellSetGrid.Rows; gridRow++)<BR>&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int actualWidth = cellSetGrid.get_TextMatrix(gridRow, gridColumn).Length * 100;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (actualWidth &gt; maxwidth)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; maxwidth = actualWidth;<BR>&nbsp;&nbsp;&nbsp;&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;&nbsp;&nbsp;&nbsp; cellSetGrid.set_ColWidth(gridColumn, maxwidth);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; catch(Exception err)<BR>&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; MessageBox.Show(err.Message);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; finally<BR>&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; cellSetGrid.Redraw = true;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&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;&nbsp; <IMG height=651 src="http://www.cnblogs.com/images/cnblogs_com/sorosjing/FlexGridDemo.JPG" width=682 border=0><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 文件下载路径：<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <A title=文件下载路径 style="COLOR: #ff0000" href="http://www.cnblogs.com/Files/sorosjing/CellGridDemo.rar" target=_blank>http://www.cnblogs.com/Files/sorosjing/CellGridDemo.rar</A></P><img src ="http://www.cnblogs.com/sorosjing/aggbug/315735.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47977/" target="_blank">Mono 的Virtual PC 虚拟机</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>学位英语通过，特此庆祝一下</title><link>http://www.cnblogs.com/sorosjing/archive/2005/12/31/308675.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Sat, 31 Dec 2005 01:58:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2005/12/31/308675.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/308675.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2005/12/31/308675.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/308675.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/308675.html</trackback:ping><description><![CDATA[刚刚通过了学校的学位英语考试，终于可以轻松过新年了。<BR>在此，衷心祝愿那些仍在变态考试边缘挣扎的才子们考试顺利。<IMG src="http://www.cnblogs.com/Emoticons/emteeth.gif" align=absMiddle border=0><BR><EMBED name=MediaPlayer1 pluginspage=http://www.microsoft.com/Windows/MediaPlayer src=/Files/sorosjing/16.wma width=200 height=200 type=application/x-mplayer2 autostart="1" showcontrols="1"></EMBED>&nbsp;<img src ="http://www.cnblogs.com/sorosjing/aggbug/308675.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47970/" target="_blank">19岁天才黑客发布首个iPhone 3GS破解软件</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>VS2005常用插件</title><link>http://www.cnblogs.com/sorosjing/archive/2005/12/09/293828.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Fri, 09 Dec 2005 07:19:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2005/12/09/293828.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/293828.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2005/12/09/293828.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/293828.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/293828.html</trackback:ping><description><![CDATA[<SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Visual Studio 2005 </SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">为我们带来了新的编程体验，提供了从需求分析到最终测试整个软件生命开发周期的解决方案。</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"> </SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">但是，我们也可以看到一直以来围绕着</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">Visual Studio</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">有许多各种功能的插件，或是为</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">Visual Studio </SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">增加了新的功能或者对原有功能进行了优化，已经成为开发者不可缺少的工具。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">Visual Studio 2005 </SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">刚刚发布不久，所以本期我们精心挑选了在</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"> Visual Stuio2003 </SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">中经典的同时已经升级到对</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">Visual Studio 2005 </SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'">支持的插件。<BR>
<P class=columnnavfont2 style="MARGIN: 7.5pt 0cm auto 3pt"><STRONG><SPAN style="FONT-SIZE: 10.5pt; COLOR: windowtext; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">插件名称：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: windowtext"><FONT face=Verdana>Reflector.FileDisassembler <BR></FONT></SPAN></STRONG><STRONG><SPAN style="FONT-SIZE: 10.5pt; COLOR: windowtext; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">插件作者：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: windowtext"><FONT face=Verdana>Lutz Roeder <BR></FONT></SPAN></STRONG><STRONG><SPAN style="FONT-SIZE: 10.5pt; COLOR: windowtext; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">最新版本：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: windowtext"><FONT face=Verdana>Reflector.FileDisassembler 4.1.85.0 <BR></FONT></SPAN></STRONG><STRONG><SPAN style="FONT-SIZE: 10.5pt; COLOR: windowtext; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">发布日期：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; COLOR: windowtext"><FONT face=Verdana> <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><st1:chsdate w:st="on" IsROCDate="False" IsLunarDate="False" Day="23" Month="10" Year="2005">2005-10-23</st1:chsdate> </FONT></SPAN></STRONG></P>
<P class=columnfont style="MARGIN: auto 0cm; LINE-HEIGHT: 20pt; mso-line-height-rule: exactly"><FONT color=#333333><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">插件简介：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt"><FONT face=Verdana> Reflector.FileDisassembler</FONT></SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">，它是一个类浏览器和反编译器，可以分析程序集并向你展示它的所有秘密。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt"><FONT face=Verdana>Reflector.FileDisassembler</FONT></SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">，你可以浏览程序集的类和方法，可以分析由这些类和方法生成的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt"><FONT face=Verdana> Microsoft </FONT></SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">中间语言</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt"><FONT face=Verdana> (MSIL)</FONT></SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Verdana; mso-hansi-font-family: Verdana">等．<BR>相关网址：<A href="http://www.denisbauer.com/NETTools/FileDisassembler.aspx">http://www.denisbauer.com/NETTools/FileDisassembler.aspx</A></SPAN></FONT></P>
<P class=columnnavfont2><STRONG>插件名称：CodeSmith </STRONG></P>
<P class=columnnavfont2><STRONG>插件作者：Eric J. Smith </STRONG></P>
<P class=columnnavfont2><STRONG>最新版本：CodeSmith 3.1 </STRONG></P>
<P class=columnnavfont2><STRONG>发布日期：2005-8-11</STRONG> <BR><BR></P>
<P class=columnfont>插件简介： CodeSmith 是一种基于模板的代码生成工具，它使用类似于 ASP.NET 的语法来生成任意类型的代码或文本。与其它许多代码生成工具不同，CodeSmith 不要求你订阅特定的应用程序设计或体系结构。借助 CodeSmith 可以生成包括简单的强类型集合和完整应用程序在内的任何东西。<BR><BR>相关网址：<A href="http://www.codesmithtools.com/">http://www.codesmithtools.com/</A><BR><BR></P>
<P class=columnnavfont2><STRONG>插件名称：NDoc</STRONG></P>
<P class=columnnavfont2><STRONG>插件作者：SourceForge</STRONG></P>
<P class=columnnavfont2><STRONG>最新版本：NDoc 1.3.1</STRONG></P>
<P class=columnnavfont2><STRONG>发布日期：2005-1-25</STRONG><BR><BR></P>
<P class=columnfont>插件简介： 编写代码文档资料几乎总是一项令人畏惧的任务。NDoc 工具能够使用反射来分析程序集，并使用从 C# XML 注释生成的 XML 自动为代码生成文档资料，新版本提供了更多语言的支持。 <BR><BR>相关网址：<A href="http://ndoc.sourceforge.net/">http://ndoc.sourceforge.net/</A><BR><BR></P>
<P class=columnnavfont2><STRONG>插件名称：NUnit</STRONG></P>
<P class=columnnavfont2><STRONG>插件作者：Michael C. Two, Charlie Poole 等</STRONG></P>
<P class=columnnavfont2><STRONG>最新版本：NUnit version 2.2.3</STRONG></P>
<P class=columnnavfont2><STRONG>发布日期：2005-11-15<BR></STRONG></P>
<P class=columnfont>插件简介： NUnit 是为 .NET 框架生成的开放源代码单元测试框架。NUnit 使你可以用你喜欢的语言编写测试，从而测试应用程序的特定功能。<BR><BR>相关网址：<A href="http://www.nunit.org/">http://www.nunit.org/</A><BR><BR></P>
<P class=columnnavfont2><STRONG>插件名称：FxCop </STRONG></P>
<P class=columnnavfont2><STRONG>插件作者：Microsoft </STRONG></P>
<P class=columnnavfont2><STRONG>最新版本：FxCop 1.32</STRONG></P>
<P class=columnnavfont2><STRONG>发布日期：2005-7-25<BR><BR></STRONG></P>
<P class=columnfont>插件简介：.NET 框架非常强大，这意味极有可能创建优秀的应用程序，但也同样存在创建劣质程序的可能。FxCop 是有助于创建更好的应用程序的工具之一，通过分析程序集，并使用许多不同的规则来检查它是否符合这些规则。</P>
<P class=columnnavfont2>相关网址：<A href="http://www.sourcegear.com/dragnet/downloads.html">http://www.sourcegear.com/dragnet/downloads.html</A><BR><BR></P>
<P class=columnnavfont2><STRONG>插件名称：GhostDoc </STRONG></P>
<P class=columnnavfont2><STRONG>插件作者：Roland Weigelt</STRONG></P>
<P class=columnnavfont2><STRONG>最新版本：GhostDoc 1.9.1 </STRONG></P>
<P class=columnnavfont2><STRONG>发布日期：2005-11-20</STRONG><BR><BR></P>
<P class=columnfont>插件简介：GhostDoc 是一个基于Visual Studio的 XML 文档注释生成器，相比 NDoc 而言它更可以帮助你自动生成大量令人厌烦的相似的描述。<BR></P>
<P class=columnnavfont2>相关网址：<A href="http://www.roland-weigelt.de/ghostdoc/">http://www.roland-weigelt.de/ghostdoc/</A><BR><BR></P></SPAN><img src ="http://www.cnblogs.com/sorosjing/aggbug/293828.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47969/" target="_blank">新浪邮箱大本营粉墨登场！Sina.cn开放注册</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>AMO编程</title><link>http://www.cnblogs.com/sorosjing/archive/2005/12/08/292848.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Thu, 08 Dec 2005 01:37:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2005/12/08/292848.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/292848.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2005/12/08/292848.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/292848.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/292848.html</trackback:ping><description><![CDATA[摘要: 连接Analysis Services  创建和处理Analysis Services对象，必须先要连接到Analysis Services 服务器Private Shared objServer As New ServerPrivate sub ConnectAnalysisServices() Dim strASConn As String = "Data Source=LocalHost;P&nbsp;&nbsp;<a href='http://www.cnblogs.com/sorosjing/archive/2005/12/08/292848.html'>阅读全文</a><img src ="http://www.cnblogs.com/sorosjing/aggbug/292848.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47968/" target="_blank">IE市场份额首次跌破60%</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Analysis Management Object对象模型</title><link>http://www.cnblogs.com/sorosjing/archive/2005/12/07/292571.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Wed, 07 Dec 2005 07:59:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2005/12/07/292571.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/292571.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2005/12/07/292571.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/292571.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/292571.html</trackback:ping><description><![CDATA[摘要: 在SQL Server 2005中，Analysis Management Object（AMO）是一种全新的编程对象模型。开发人员可以使用AMO创建维度，立方体，分区等Analysis Services对象。本文主要介绍AMO的对象模型，对象模型中的类，以及类中的属性和方法。[Quick Tips] 当你使用AMO对象进行编程的时候，如果需要处理数据库中的所有的对象，可以调用Database对象&nbsp;&nbsp;<a href='http://www.cnblogs.com/sorosjing/archive/2005/12/07/292571.html'>阅读全文</a><img src ="http://www.cnblogs.com/sorosjing/aggbug/292571.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47965/" target="_blank">Google App Engine宕机6小时——云的安全在哪里？</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>华为前员工：揭密华为“薪酬真相”【转】</title><link>http://www.cnblogs.com/sorosjing/archive/2005/12/01/288251.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Thu, 01 Dec 2005 00:29:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2005/12/01/288251.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/288251.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2005/12/01/288251.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/288251.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/288251.html</trackback:ping><description><![CDATA[&nbsp;<BR>　　　1、市场系统。按地域先分为国内和海外，国内又分为深圳总部和各省市办事处，海外也分为国内深圳总部和各大洲地区部。按工作分工又可基本分为客户系统和产品系统。 <BR>　　 <BR>　　　　深圳总部：包含国内、海外客户和产品系统的总部机关。国内包括各目标运营商（电信、网通、移动、联通等）系统部的总部和各产品（交换、光网络、移动、智能网等）国内系统部的总部。海外包括国际营销（客户）和产品国际（产品）的总部。还有负责客户接待（最为一些不明真相的人误解）的客户工程部。当然个别小部门的总部不在深圳而在北京。 <BR>　　 <BR>　　　　国内办事处：基本位于各直辖市及省会城市，大连、青岛等也有小办事处。各办事处的工作目标就是销售，分客户线（负责各运营商）和产品线（负责各产品）。各线人员算各部门深圳总部的派出人员，又直接受办事处主任管理。办事处主任对所在办事处辖区负责，权利很大，相当于封疆大吏。 <BR>　　 <BR>　　　　海外地区部：包括亚太、中东北非、独联体、南部非洲、拉美、北美、欧洲、东太平洋（按地理应该叫西太平洋，因为管辖的是日本、韩国、澳洲、香港地区等亚太发达地区，但当时起名时不知怎么弄反了，就一直将错就错）。各海外地区部又在各个国家设了办事处，也分客户线和产品线。 <BR>　　 <BR>　　　　市场系统的海内外员工总数应该在4000偏上。2、技术支援系统。包括深圳总部和各国内办事处及海外地区部的派出机构，按维护产品不同分为各产品部，负责产品的售后服务。总人数在2000至3000人（为降低成本，该部门的工作不少由外包公司负责，称合作方）。 <BR>　　 <BR>　　　　3、研发系统。负责华为各产品的研发，是华为最庞大的系统，人数在10000人左右，还不包括相当数量的外包人员。分为深圳总部和各地研究所，根据产品不同分为交换接入、光网络、移动、智能网、数通、多媒体等等。后来又改为固网、无线、智能等等，不管名字怎么改，基本还是按产品划分。各地研究所侧重不同，比如北京侧重数通、上海侧重无线、南京据说网管搞得不错。华为在海外也有不少研究所，包括印度、美国、俄罗斯、瑞典等、除了印度曾经搞的挺大外（现在印度人好象都来深圳了），其他的基本是样子。 <BR>　　 <BR>　　　　4、财务系统。包括深圳总部和各办事处派出机构。海外的财务基本由香港华为的财物负责。财务系统总人数在1000以上。 <BR>　　 <BR>　　 <BR>　　　　5、中试系统。全称好象叫中间试制部。是为了保证产品质量在研发和生产系统间插入的一个部门。按NBA的数语叫专干脏活类活，待遇反而不高。任正非的板凳要坐十年冷据说就是针对这个部门说的。不只现在是否被研发系统消化了。人数在1000左右。 <BR>　　 <BR>　　　　6、生产系统。该部门在高科技行业的地位可想而知，人员素质总体看是最低的。其一线员工主要由国内一些中专学校代陪，当然其中的管理和技术人员和其它部门一样，都是来自大学生。该系统人树在1000以上。 <BR>　　 <BR>　　　　7、市场财经系统。该部门是负责货款回收的，应该隶属于市场系统，只是回款的地位很重要，所以在华为单列出来。人数和其它系统比算少的。 <BR>　　 <BR>　　　　8、秘书和文员。秘书和文员不是一个单独的部门，而是分布在各个系统中。秘书指有华为正式员工资格的，一般是大学本科或研究生。文员不是华为正式员工，而是隶属于和华为有合作关系的秘书公司，一般是大专毕业。华为除了副总裁以上的干部外，基本没有领导个人秘书，秘书大多是部门秘书，一般30人一个，但具体有出入，有的秘书管的多，有的管的少，一般负责部门的考勤、会议纪要、日常事物等等，基本来自大学刚毕业或毕业不久的女生，工资待遇相当于华为同等学历的应届生水平，一般上涨缓慢，奖金等也是较低的，所以流失很大。文员主要负责一些简单的重复性工作，由于不是华为正式员工，工资更低，仅举一例：某文员基本工资1800，按工作量每月加800到1000不等。 <BR>　　 <BR>　　　　薪酬正文：由于本人是2000年加入华为的，所以只能从2000年往后说了。 <BR>　　 <BR>　　　　1、基本工资。华为的基本工资起薪是分应届生和社会招聘的，2000年华为应届本科起薪是税前4000，硕士生税前5000，博士人少就不提了。社招的要自己和公司谈，有的很牛的不会谈结果比应届还低，有的很一般的会吹结果很高，但总的说比应届的高。2000年来的一般进公司3个月左右有一次加薪， 200到3000不等，取决于你的部门和表现，但基本按部门，好部门表现差的比差部门好的涨得还多。涨的多的包括研发和市场、技术支援确定要去办事处的人员。涨的少的包括各部门秘书、一些总部事物部门等。其它部门算中等。原则是向研发和市场倾斜，向一线倾斜。此后，涨工资就看个人造化了，有去对部门、跟对领导一路高歌的，也有从此打住的。 <BR>　　 <BR>　　　　总的来说由于2001年华为招人太多及起薪过高导致消化不良，2000年来的这批人除了工资过低的在2001年普调到和2001年同等学历应届生一样外，再没有大规模的普涨了。本人在此后的三年中也只又涨了一次，最终以6500离职。据我了解大部分2000年本科生的工资现在在税前5500到7500之间，硕士生加1000。2001年是IT泡沫最疯狂的一年，华为狂招了据说将近6000 人。起薪也高至本科应届税前5500，硕士生7000，当然一部分秘书、财务等要相应低1000。社招的也普遍不低于应届。过高起薪的恶果是2001年来的大部分人在此后的两年多中再也没有涨过。2002、2003之后华为停止了大规模招应届毕业生，起薪也不在提高，在2004年据说还大大降低。至于社招的，除了牛人外，华为的初次报价据我所知是税前5000。至于所得税，华为避税还是不错的，我6500扣掉税和个人支付的社保外，还在将近6000。总的来说，华为2000年及以后来的税前基本工资在5500以上的占大多数，每早来一年平均高1000，硕士生相当于早来一年的本科。98年以前来的基本在 10000向上了，当然他们已经不靠工资了。 <BR>　　 <BR>　　　　2、福利。有人说华为是没有福利的，其实是福利货币化了。华为的货币福利分两大类。一是工卡里的钱，根据工作地域不同分3类：1000每月，工作地在深圳关外，800每月，工作地在国内其它地区，一分没有，工作地在海外。在深圳关外高200是因为距离远交通费高。在海外没有这项补助是因为海外另有高额补助，将在下文描述。这笔钱每月打到工卡里，可用于购买班车票，在公司食堂就餐及在公司小卖部购物，不得取现。但每年底高于一定数额的或离职时可以一次取现，不过要扣20%的税。二是每月基本工资15%的退休基金，比如你基本工资 5000，那每月公司另给你750，先用来交公司应交的社保，华为统一按一个标准交，每月在200多，这样一来你每月还剩的部分在你离职时一次提取，不过也要扣20%的税。这两部分加起来税后每个人也基本在1000多。 <BR>　　 <BR>　　　　3、加班费。加班费主要看部门和领导。标准按你的基本月工资除以月法定工作日。分为一天和半天。按我的经验，研发和市场很少有，除非是统一的为了干项目的强制加班。技术支援只有周末才算，平常晚上不算，本来通信这行的技术支援就是晚上干嘛。 <BR>　　 <BR>　　　　4、补助。补助基本分4类：国内出差补助，国内离家常驻外地补助，海外出差补助，海外长住补助。 <BR>　　 <BR>　　　　国内出差补助为税后每天100人民币，交通费、住宿费、通信费另外实报实销。 <BR>　　 <BR>　　　　国内离家常驻外地补助指市场和技术支援人员在家庭所在地和深圳以外的办事处常驻时的补助，按地区艰苦程度不同分为几档：30（北京、上海等）、50 （一般省份）、70（青海、新疆、西藏等）人民币每天等，同时公司负责住宿费用。前两年形势好的时候，这些人在所在办事处省内出差也同时享有每天100的出差补助，现在不知还有没有了。但研发人员如常驻外地研究所不享有此补助。 <BR>　　 <BR>　　　　海外出差补助为税后每天50美元，香港为300港币。不知现在多少。 <BR>　　 <BR>　　　　海外常驻补助在2003年底以前分为3档：税后50（发达国家）、60（一般国家）、70？（危险国家）美元每天，公司提供住宿（条件很好）和办公车辆等。2004年开始大幅降低，一般国家降到税后32美元每天。在海外连续工作达到3个月的可以享受此补助。 <BR>　　 <BR>　　5、奖金。华为的年终奖基本要拖到第二年三季度发放。不过在上半年离职，奖金并不会因此减少，到时候自会发到你离职时预留的帐户。在2000年华为大规模招人以前，奖金是很丰厚的，之后就每况愈下了，没办法，人太多了。现在的情况是，如果已经干满一年，高、中、低挡基本是30000、20000、 10000。当然市场和研发的骨干还是高，秘书等就可怜了。基本一个业绩优秀的国内市场人员，能在大几万，客户线比产品线高，市场比技术支援高，海外比国内高。 <BR>　　 <BR>　　　　6、股票。2000年7月以前来的根据工作时间长短，在入职满一年后，拥有华为的内部职工股，来的越早，越多。当然股票是按每股一元向公司购买的，不得转让，离职时必须卖给公司。这类股票的分红是惊人的，2001年及以前达到70%每年，扣掉税两年就可以回本。基本上99年来的有几万股，98年来的有十几万股，再早的就看造化了。我认识一个97年初来的，有四十万股，他2001年的分红税后就是20多万，这种人在华为有好几千，是华为高速发展的受益人，也是前文说的不靠工资的人。在2002年，华为进行了股权改革，原来员工离职时把股票卖给公司，是按每股一元的面值，跟买时一个价。从2002年开始，员工买卖公司股票都要按每股净资产，当年的每股净资产高达每股2元多，拥有股票的老员工的股票市值一夜之间上涨 150%，大发一笔，而那些在新规定出台前刚按老规矩把股票卖给公司的离职员工就亏大了，这造成了一批华为前元老和华为对薄公堂。 <BR>　　 <BR>　　　　而对于占华为员工人数一半多的2000年7月后入职的新人来说，谁是谁非已经没有意义了。他们必须按新规定以每年的每股净资产购买公司配给的股票，离职卖给公司时再按离职当年的净资产出售。一方面，华为高速成长不在，每股净资产不会再高速增长，另一方面，人多粥少，每人也分不到多少。而那些拥有老股票的老员工们，也无法再向以前那样每年坐收巨额红利了。一切都因为华为人多了，发展却慢了。人们传说的华为股票就是这样，从他的工号就可略知一二。工号在 10000以内的，基本属于97年及以前来的，属于华为股票神话的集体收益者，工号在10000到20000之间的，属于98、99年来的，属于一般收益者，工号在20000以上的属于2000年以后来的，属于空有其名，却未有其实的。而我，工号22%%%，维有怪自己没有早生几年了，呵呵。 <BR>　　只要稍稍分析一下以上华为的薪酬构成，就可轻松得出结论： <BR>　　 <BR>　　　　1、2001年及以前，华为的靠股票和奖金一起发财，因为那时的人少，公司发展快，奖金和股票分红高。所以华为士气高昂。 <BR>　　 <BR>　　　　2、2002到2003年，华为的只有靠补助尤其是海外补助的发财，因为以2000年底的香港通讯展为标志，华为开始大规模开拓海外市场，大批市场、技术支援和研发人员被派往海外办事处和研究所，使得原来只有少数人享有的高额海外补助开始被大家认知。而与此同时，高额的奖金和股票分红不再，国内人员待遇停滞不前。所以除了海外人员混日子外（补助和股票、奖金不同，是按天不是按业绩发的，没有激励机制，只要能混下去，不被赶回国内就有），大部分国内人员，尤其是在深圳及国内研究所的大批研发人员，他门连国内补助也没有，士气低落。 <BR>　　 <BR>　　　　3、2004年开始，到哪里发财？奖金、股票已经没了，海外补助也降了。 <BR>　　 <BR>　　　　全体员工士气低落，但外部就业环境更差，于是大家都开始靠基本工资混日子，华为国企化成型，只是基本工资高些。 <BR>　　 <BR>　　　　华为的部门介绍漏了管理工程部. <BR>　　 <BR>　　　　4、管理工程部。负责华为IT系统的建设和维护。其工作的成果使华为分布在世界各地的20000多员工在一个IT平台上工作，人数也在1000以上。任正非固然花了很多冤枉钱，但花在这个部门的钱是我很佩服的。 <BR>　　以我自己的收入做个总结吧。 <BR>　　 <BR>　　　　我在华为40个月，2000/7到2003/10。在深圳总部累计16个月，在国内办事处累计24个月，在海外4个月。 <BR>　　其中基本工资收入税后约共计230000，平均5750每月。 <BR>　　 <BR>　　　　福利收入税后约50000，平均1250每月。 <BR>　　 <BR>　　　　加班费共5000，主要是技术支援实习时挣的。 <BR>　　 <BR>　　　　补助税后共120000，其中国内离家常驻补助大约35000，国内出差补助大约25000（包括在办事处常驻时省内出差），海外常驻补助大约60000（在海外待了四个月，刚好超过三个月）。 <BR>　　 <BR>　　　　奖金拿了三年税后共50000，其中01年算新员工8000左右，02年27000，03年因已有离职倾向15000。 <BR>　　 <BR>　　　　其它包括00年底那唯一一次年终双薪，每年小礼拜攒下的未休年休假离职折算等等共10000左右。再加上在办事处时多报的出租车费等等（我是产品线，没客户线的狠）10000左右。 <BR>　　 <BR>　　　　各项累计为230000+50000+5000+120000+50000+10000+10000共475000。 <BR>　　 <BR>　　　　这就是我在华为3年4个月的全部税后收入，平均每月11875。由于我大学其间打工有几万积蓄，再加上在华为的大部分时间在办事处，住宿、交通、通信和大部分吃饭（跟着客户线混饭）都可按公司规定报销，又没有女友，除了给父母一些，自己只花一些挥霍的钱，所以现在还剩下400000出头。 <BR>　　 <BR>　　　　解释:在深圳总部的16个月包括在海外的4个月,因为我去海外算支援,关系还在深圳总部的产品国际。 <BR>　　 <BR>　　　　由我的情况可以得知，华为2000年以后来的大部分人（早来的要更高，04年来的就不一定了）全部税后年薪十万还是有保障的，如果常驻在海外和办事处或者经常出差，还可以更高（但和以前比也变少了）。但是收入的弹性变小了，激励变少了，使得想干大事和觉的自己很牛的人离去，已经挣够了的老员工和没有什么闯劲的新人留下，毕竟年薪十万以上在当今的中国也不是随手可得，大企业病成型了。下面怎么办，不是我这个水平的人能解决的了。薪酬篇告一段落。 <BR>　　 <BR>　　　　写这些只为澄清一些社会上对华为的不实传言，给愿意进华为的朋友在决定前提供个参考，没别的意思。 <img src ="http://www.cnblogs.com/sorosjing/aggbug/288251.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47961/" target="_blank">微软新推社交网站Windows Live Planet</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>VS2005中读写配置文件（一）</title><link>http://www.cnblogs.com/sorosjing/archive/2005/11/28/285861.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Mon, 28 Nov 2005 02:00:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2005/11/28/285861.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/285861.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2005/11/28/285861.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/285861.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/285861.html</trackback:ping><description><![CDATA[<P>VS2003中对于应用程序配置文件（app.config或者web.config)只提供了读取的功能。而在VS2005中，对于配置文件的功能有了很大的加强。<BR>在VS2005中，对于应用程序配置文件的读写一般使用Configuration,ConfigurationManager两个类。<BR>ConfigurationManager类为客户应用程序提供了一个访问的功能。<BR>使用ConfigurationManager对象执行打开配置文件的操作后，将会返回一个Configuration的对象。<BR>通过程序实现读写配置文件的代码如下所示：<BR>1&nbsp; 创建配置文件中的配置节所对应的类。该类必须继承自ConfigurationSection<BR>&nbsp; public sealed class ConfigurationSections : ConfigurationSection<BR>&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ConfigurationProperty("filename", DefaultValue = "default.txt")]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public string FileName<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; get<BR>&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; return (string)this["filename"];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; set<BR>&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; this["filename"] = value;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; public sealed class BusinessSpaceConfiguration : ConfigurationSection<BR>&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ConfigurationProperty("filename")]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public string FileName<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; get<BR>&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; return (string)this["filename"];<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; set<BR>&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; this["filename"] = value;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp; }<BR><BR>2&nbsp; 创建配置文件代码<BR>&nbsp;&nbsp; private static void WriteAppConfiguration()<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try<BR>&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; ConfigurationSections configData = new ConfigurationSections();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; configData.FileName = "abc.txt";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Configuration.Configuration&nbsp; config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; config.Sections.Remove("ConfigurationSections");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; config.Sections.Add("ConfigurationSections", configData);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; config.Save();</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; BusinessSpaceConfiguration bsconfigData = new BusinessSpaceConfiguration();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bsconfigData.FileName = "def.txt";<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Configuration.Configuration config1 = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; config1.Sections.Remove("BusinessSpaceConfiguration");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; config1.Sections.Add("BusinessSpaceConfiguration", bsconfigData);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; config1.Save();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&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; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; catch (Exception err)<BR>&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; Console.Write(err.Message);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR><BR>3&nbsp; 生成的配置文件格式如下所示：<BR>&lt;?xml version="1.0" encoding="utf-8"?&gt;<BR>&lt;configuration&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;configSections&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;section name="BusinessSpaceConfiguration" type="ConsoleApplication1.BusinessSpaceConfiguration, ConsoleApplication1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /&gt;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;section name="ConfigurationSections" type="ConsoleApplication1.ConfigurationSections, ConsoleApplication1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;/configSections&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;BusinessSpaceConfiguration filename="def.txt" /&gt;<BR>&nbsp;&nbsp;&nbsp; &lt;ConfigurationSections filename="abc.txt" /&gt;<BR>&lt;/configuration&gt;<BR><BR>3&nbsp; 读取应用程序配置文件<BR>&nbsp;&nbsp; private static void ReadAppConfiguration()<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ConfigurationSections obj1 = ConfigurationManager.GetSection("ConfigurationSections") as ConfigurationSections;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; BusinessSpaceConfiguration obj2 = ConfigurationManager.GetSection("BusinessSpaceConfiguration") as BusinessSpaceConfiguration;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Console.WriteLine(obj1.FileName);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Console.WriteLine(obj2.FileName);</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</P><img src ="http://www.cnblogs.com/sorosjing/aggbug/285861.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47960/" target="_blank">火狐3.5版被指推出太匆忙：存在50多个漏洞</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>微软笔试试题——11月13日，2005年</title><link>http://www.cnblogs.com/sorosjing/archive/2005/11/14/275776.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Mon, 14 Nov 2005 03:11:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2005/11/14/275776.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/275776.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2005/11/14/275776.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/275776.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/275776.html</trackback:ping><description><![CDATA[<P>Please examine the following code carefully.List any possible bugs in this code and correct the bugs.<BR>#define mkupper(c) ((c)-'a'+'A')<BR>void StringToUpper(char *pStr)<BR>{<BR>&nbsp;&nbsp; while(pStr)<BR>&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *pStr = mkupper(*pStr);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pStr++;<BR>&nbsp;&nbsp; }<BR>}<BR>int main()<BR>{<BR>&nbsp;&nbsp;&nbsp; char *tmp = "aBcdef";<BR>&nbsp;&nbsp;&nbsp; StringToUpper(tmp);<BR>&nbsp;&nbsp;&nbsp; return 0;<BR>}<BR><BR><BR><BR>void _cdecl _assert(<BR>&nbsp;&nbsp;&nbsp; const char *expr;<BR>&nbsp;&nbsp;&nbsp; const char *filename,<BR>&nbsp;&nbsp;&nbsp; unsigned lineno<BR>&nbsp;&nbsp; )<BR>_assert() will display a message and abort<BR>list test cases you would design if you were asked to test the following function.</P><img src ="http://www.cnblogs.com/sorosjing/aggbug/275776.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47959/" target="_blank">Google对手机搜索进行优化升级</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Structure of the Basic MDX Query（转）</title><link>http://www.cnblogs.com/sorosjing/archive/2005/11/01/266006.html</link><dc:creator>经霄</dc:creator><author>经霄</author><pubDate>Tue, 01 Nov 2005 01:13:00 GMT</pubDate><guid>http://www.cnblogs.com/sorosjing/archive/2005/11/01/266006.html</guid><wfw:comment>http://www.cnblogs.com/sorosjing/comments/266006.html</wfw:comment><comments>http://www.cnblogs.com/sorosjing/archive/2005/11/01/266006.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/sorosjing/comments/commentRss/266006.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/sorosjing/services/trackbacks/266006.html</trackback:ping><description><![CDATA[<P>To specify a dataset, a Multidimensional Expressions (MDX) query must contain the following information: 
<UL type=disc>
<LI>The number of axes (up to 128) 
<LI>The members from each dimension to include on each axis 
<LI>The name of the cube that sets the context 
<LI>The members from a slicer dimension on which data is sliced for members from the axis dimensions </LI></UL>
<P>This information can be complex. MDX syntax provides the information in a simple and straightforward manner, using the MDX SELECT statement.</P>
<H4>Basic MDX Syntax: SELECT Statement</H4>
<P>In MDX, the SELECT statement is used to specify a dataset that contains a subset of multidimensional data. A basic MDX query is structured in the following way:</P><PRE class=code>SELECT [&lt;axis_specification&gt;
       [, &lt;axis_specification&gt;...]]
  FROM [&lt;cube_specification&gt;]
[WHERE [&lt;slicer_specification&gt;]]</PRE>
<P>The basic MDX SELECT statement contains a SELECT clause and a FROM clause, with an optional WHERE clause. These syntax elements are shown in the following example:</P><PRE class=code>SELECT
   { [Measures].[Unit Sales], [Measures].[Store Sales] } ON COLUMNS,
   { [Time].[1997], [Time].[1998] } ON ROWS
FROM Sales
WHERE ( [Store].[USA].[CA] )</PRE>
<P>The SELECT clause determines the axis dimensions of an MDX SELECT statement. Two axis dimensions are defined in this MDX query example.The FROM clause determines which multidimensional data source is to be used when extracting data to populate the result set of the MDX SELECT statement.</P>
<P>A WHERE clause optionally determines which dimension or member to use as a slicer dimension; this restricts the extracting of data to a specific dimension or member. The WHERE clause in this example restricts the data extract for the axis dimensions to a specific member of the Store dimension. An MDX SELECT statement supports other optional syntax elements, such as the WITH keyword, and the use of MDX functions to construct members by calculation for inclusion in an axis or slicer dimension.</P>
<H4>SQL and MDX</H4>
<P>The syntax format of the MDX SELECT statement is similar to that of SQL syntax; however, there are several primary differences: 
<UL type=disc>
<LI>MDX syntax distinguishes sets by surrounding tuples or members with braces (the { and } characters.) MDX queries can have up to 128 axis dimensions in the SELECT statement, but only the first 5 axes have aliases. An axis can be referred to either by its ordinal position within an MDX query, or by its alias if it has been assigned an alias. In the previous example, the COLUMNS and ROWS axis aliases are used. The example query could also have been written in the following way, using the ordinal position of each axis: 
<LI><PRE class=code>SELECT
   { [Measures].[Unit Sales], [Measures].[Store Sales] } ON AXIS(0),
   { [Time].[1997], [Time].[1998] } ON AXIS(1)
FROM Sales
WHERE ( [Store].[USA].[CA] )</PRE>
<LI>As with an SQL query, the FROM clause names the source of the data for the MDX query. However, unlike an SQL query, the FROM clause in an MDX query is restricted to a single cube. Information from other cubes can be retrieved, however, on a value-by-value basis using the <B>LookupCube</B> function. 
<LI>In the MDX query, the WHERE clause describes the slicer dimensions. If a dimension is not mentioned as part of the WHERE clause, Microsoft SQL Server 2000 Analysis Services assumes that any dimension not assigned to an axis dimension is a slicer dimension, and the dimension is filtered on its default members. The WHERE clause can change the filtering process for specified dimensions, allowing fine control of included data. </LI></UL><!--END--><img src ="http://www.cnblogs.com/sorosjing/aggbug/266006.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47958/" target="_blank">风声又起 Windows 7 RTM版7月13日完成</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item></channel></rss>