<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_天星直播</title><subtitle type="text">天星高清网络电视直播http://www.3tvs.info天星直播论坛http://www.3tvs.info/bbs天星影院http://www.3tvs.info/yy</subtitle><id>http://feed.cnblogs.com/blog/u/38104/rss</id><updated>2012-02-02T07:13:19Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/38104/rss"/><entry><id>http://www.cnblogs.com/hyruur/archive/2012/02/02/2335827.html</id><title type="text">C# 电脑休眠与待机</title><summary type="text">1.启用休眠，控制面板-电源选项-休眠-启动休眠C#代码如下：Application.SetSuspendState(PowerState.Suspend,true,true); //设置电脑待机Application.SetSuspendState(PowerState.Hibernate,true,true); //设置电脑休眠，没启动休眠自动转为待机</summary><published>2012-02-02T07:13:00Z</published><updated>2012-02-02T07:13:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2012/02/02/2335827.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2012/02/02/2335827.html"/><content type="html">&lt;p&gt;1.启用休眠，控制面板-电源选项-休眠-启动休眠&lt;/p&gt;&#xD;
&lt;p&gt;C#代码如下：&lt;/p&gt;&#xD;
&lt;p&gt;Application.SetSuspendState(PowerState.Suspend,true,true); //设置电脑待机&lt;br /&gt;Application.SetSuspendState(PowerState.Hibernate,true,true); //设置电脑休眠，没启动休眠自动转为待机&lt;/p&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2335827.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2012/02/02/2335827.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2012/01/16/2323487.html</id><title type="text">10款实用的Ajax/JavaScript编码工具推荐</title><summary type="text">JavaScript和Ajax（Asynchronous JavaScript and XML，异步JavaScript和XML）可以为HTML页面添加各种交互和动态效果，让你的网站更加引人注目。本文为你整理了10款Ajax和JavaScript相关的编码工具，非常实用！1. Clean AJAX这是一个开源的、跨浏览器的Ajax引擎，灵感来自Java Message Service（Java消息服务），使用消息控制请求。2. Aptana Studio这是一个完整的Web开发环境，整合了针对HTML、CSS和JavaScript的强大的编码工具，拥有数千款由社区开发的附加插件。3. Spke</summary><published>2012-01-16T05:08:00Z</published><updated>2012-01-16T05:08:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2012/01/16/2323487.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2012/01/16/2323487.html"/><content type="html">&lt;div&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;JavaScript和Ajax（Asynchronous JavaScript and XML，异步JavaScript和XML）可以为HTML页面添加各种交互和动态效果，让你的网站更加引人注目。本文为你整理了10款Ajax和JavaScript相关的编码工具，非常实用！&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://clean-ajax.sourceforge.net/" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;1.&amp;nbsp; Clean AJAX&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;这是一个开源的、跨浏览器的Ajax引擎，灵感来自Java Message Service（Java消息服务），使用消息控制请求。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R6341601-0.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: left; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://www.aptana.org/" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;2.&amp;nbsp; Aptana Studio&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;这是一个完整的Web开发环境，整合了针对HTML、CSS和JavaScript的强大的编码工具，拥有数千款由社区开发的附加插件。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R634JF-1.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://www.spket.com/" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;3.&amp;nbsp; Spket IDE&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;这是一个用于JavaScript和XML开发的工具包，其中JavaScript编辑器提供了代码补全、语法高亮和内容大纲等功能，帮助开发者高效地编写JavaScript代码。该工具对于非商业用途是免费的。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R6344008-2.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://www.activestate.com/komodo-edit" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;4.&amp;nbsp; Komodo Edit&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;支持PHP、Python、Ruby、Perl、Tcl、JavaScript、CSS、HTML以及模板语言（比如RHTML、Template-Toolkit、HTML-Smarty 和Django等）。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R63413C-3.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://www.wavemaker.com/" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;5.&amp;nbsp; WaveMaker &amp;#8211; Development Platform&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;WaveMaker（前身为ActiveGrid）是一个开源的软件开发平台，可以使Java Web和云应用程序的创建过程更加自动化。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R6341091-4.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://qooxdoo.org/" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;6.&amp;nbsp; Qooxdoo&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;这是一个用于创建富互联网应用（RIA）的框架，包括一个平台独立的开发工具链、一个高水准的GUI工具以及一个先进的客户端-服务器通信层。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R63433B-5.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: left; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://www.jaxer.org/" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;7.&amp;nbsp; Aptana Jaxer&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;允许开发者使用他们的AJAX、HTML、JavaScript和DOM技能来创建服务器端Web应用。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img border="0" alt="" width="580" height="150" src="http://articles.csdn.net/uploads/allimg/120116/94_120116082344_1.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; cursor: pointer; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: left; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://projects.nikhilk.net/ScriptSharp" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;8.&amp;nbsp; Script# &amp;#8211; AJAX and JavaScript Authoring Tool&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;Script#把C#开发者的体验（编程和工具）带到了JavaScript/Ajax世界中，使用该工具你可以先编写C#源码，然后编译成脚本，即可在所有的现代浏览器中运行。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R6345436-7.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://jxlib.org/" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;9.&amp;nbsp; Jx &amp;#8211; JavaScript Library&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;Jx是一个JavaScript库，用于创建针对MooTools库的图形用户界面（GUI）。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R6341606-8.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;a target="_blank" href="http://jqueryui.com/themeroller/" style="color: #015fb6; text-decoration: none; "&gt;&lt;strong&gt;10.&amp;nbsp; JQuery UI &amp;#8211; ThemeRoller&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="line-height: 25px; text-align: justify; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;jQuery UI是基于jQuery的用户界面库，它提供了一组核心交互插件、UI部件、使用jQuery风格的可视化效果、事件驱动架构等，旨在提升Web标准、可访问性、样式灵活性以及设计友好性。&lt;/p&gt;&lt;p style="line-height: 25px; text-align: center; font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: #f8fafd; "&gt;&lt;img alt="" src="http://articles.csdn.net/uploads/allimg/120116/0R6345463-9.jpg" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; " /&gt;&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2323487.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2012/01/16/2323487.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2012/01/09/2316798.html</id><title type="text">iPhone手机软件开发工具整理（图）</title><summary type="text">iPhone AppStore平台目前依旧是最大的手机App销售平台，所以很多人也都开始会想开发自己的App放到上面去卖，或是开发iPhone可以用的App，笔者找了一些相关的开发工具资源，可以给有兴趣进入这平台的人一些参考(当然很多是要付费的就是了)。 1.CocoaChina Wiki CocoaChina是对岸的一个Obj-C的wiki网站，是一个介绍如何使用Cocoa开发的社区，他们将iPhone相关的开发文件翻译成中文，可以在wiki上看到详细的入门开发介绍。 2.iPhonedevtools.com 国外的一个iPhone开发者网站，有提供一些iPhone开发的辅助...</summary><published>2012-01-09T01:32:00Z</published><updated>2012-01-09T01:32:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2012/01/09/2316798.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2012/01/09/2316798.html"/><content type="html">&lt;div&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;iPhone AppStore平台目前依旧是最大的手机App销售平台，所以很多人也都开始会想开发自己的App放到上面去卖，或是开发iPhone可以用的App，笔者找了一些相关的开发工具资源，可以给有兴趣进入这平台的人一些参考(当然很多是要付费的就是了)。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　1.CocoaChina Wiki&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　&lt;/span&gt;&lt;center style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; "&gt;&lt;img src="http://images.enet.com.cn/2010/0315/44/6173484.png" alt="iphone开发工具" border="1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; vertical-align: middle; " /&gt;&lt;/center&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　CocoaChina是对岸的一个Obj-C的wiki网站，是一个介绍如何使用Cocoa开发的社区，他们将iPhone相关的开发文件翻译成中文，可以在wiki上看到详细的入门开发介绍。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　2.iPhonedevtools.com&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　&lt;/span&gt;&lt;center style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; "&gt;&lt;img src="http://images.enet.com.cn/2010/0315/21/6174591.png" alt="iphone开发工具" border="1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; vertical-align: middle; " /&gt;&lt;/center&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　国外的一个iPhone开发者网站，有提供一些iPhone开发的辅助工具。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　3.PhoneGap&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　&lt;/span&gt;&lt;center style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; "&gt;&lt;img src="http://images.enet.com.cn/2010/0315/72/6175328.gif" alt="iphone开发工具" border="1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; vertical-align: middle; " /&gt;&lt;/center&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　是一套可以让开发者以html+CSS+Javascript开发出原生iPhone程序的程序库，本身是开源的，然后开发公司nitobi提供收费的支援服务，当中提供的虚拟测试平台是基于Adobe AIR，也支援Android和黑莓平台，这里可以找到一些用它开发出来的相关软件，官方wiki有开发指南。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　4.Morfik&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　Morfik是原先在Palm WebOS上的开发商，提供开发适用在WebOS的工具，而现在也有针对iPhone。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　5.GameSalad&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　&lt;/span&gt;&lt;center style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; "&gt;&lt;img src="http://images.enet.com.cn/2010/0315/24/6176058.png" alt="iphone开发工具" border="1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; vertical-align: middle; " /&gt;&lt;/center&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　是一个让不太会写程序的人也可以开发出iPhone平面或卷轴式游戏的平台，开发工具本身是让使用者可以透过各种元件的搭配，使用像Automator般的指令组合成一个游戏，也可以用在开发桌面平台游戏跟web平台(需额外安装plugin)，桌面及web平台的开发可以免费使用GameSalad制作，但是iPhone平台必须在开发后，以每年99美金的价格购买iphone版本的权限，制作方式也很特别，iPhone版付费使用者，使用GameSalad开发后，就有权限可以上传到GameSalad主机，他们会将其转为iPhone平台的程序规格，供开发者上传到AppStore。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　6.Runrev Mobile&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　&lt;/span&gt;&lt;center style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; "&gt;&lt;a href="http://www.enet.com.cn/esoftware/img/2010/0315/22/6176909.jpg" target="_blank" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; text-decoration: none; color: #000000; font-size: 14px; "&gt;&lt;img src="http://images.enet.com.cn/2010/0315/22/r_6176909.jpg" alt="iphone开发工具" border="1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; vertical-align: middle; " /&gt;&lt;/a&gt;&lt;/center&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　这也是一个进入门槛比较低的开发工具，Runrev是学习自Mac早期一个简易型的开发工具-HyperCard的开发环境，可以让使用者通过类似制作一个个互相连结的卡片的方式制作出应用程序(就有点类似可以互相连结跳页的powerpoint简报档)，目前在预购中尚未推出，不过有兴趣的人可以先试用看看他们其他的桌面产品，届时推出时就比较可以缩短上手时间。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　7.MonoTouch&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　Novell推出的基于Mono平台的开发工具，可以让人使用.NET开发iPhone程式。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　&lt;/span&gt;&lt;center style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; "&gt;&lt;img src="http://images.enet.com.cn/2010/0315/53/6177738.png" alt="iphone开发工具" border="1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; vertical-align: middle; " /&gt;&lt;/center&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　8.Unity iPhone&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　Unity一开始是Mac平台上一个很杰出的游戏开发平台，后来可以跨Windows平台，他们也有自己的游戏引擎，而现在推出了iPhone开发版本，也能够支援用.NET语法(而且也是透过Mono环境) ，还可以开发出让iPhone变成像遥控器一样，和桌上电脑互动的游戏。&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　&lt;/span&gt;&lt;center style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; "&gt;&lt;img src="http://images.enet.com.cn/2010/0315/25/6179347.png" alt="iphone开发工具" border="1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; vertical-align: middle; " /&gt;&lt;/center&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　9.Layer&amp;nbsp;&lt;/span&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　&lt;/span&gt;&lt;center style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; "&gt;&lt;img src="http://images.enet.com.cn/2010/0315/48/6179092.png" alt="iphone开发工具" border="1" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; vertical-align: middle; " /&gt;&lt;/center&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;br style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal 宋体; font-family: 宋体; background-color: #f6f6f4; " /&gt;&lt;span style="font-family: 宋体; line-height: 24px; background-color: #f6f6f4; "&gt;　　Layer是一个扩增实境的使用环境，除了扩增实境本身的功能之外，也可以让使用者自行开发属于自己的扩增实境内容，有支援iPhone及Android平台。&lt;/span&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2316798.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2012/01/09/2316798.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2012/01/04/2312319.html</id><title type="text">DataGridView中comboBox(DataGridViewComboBoxColumn)的事件编写</title><summary type="text">DataGridView中虽然绑定了一个comboBox，但是这个comboBox没有任何事件。今天想加一个SelectedIndexChanged事件，遍寻网络后找到一可行方法，总结如下：view plain&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;10&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;20&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;30&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#1</summary><published>2012-01-04T09:47:00Z</published><updated>2012-01-04T09:47:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2012/01/04/2312319.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2012/01/04/2312319.html"/><content type="html">&lt;div&gt;&lt;p style="color: #333333; font-family: Arial; line-height: 26px; text-align: left; background-color: #ffffff; "&gt;DataGridView中虽然绑定了一个comboBox，但是这个comboBox没有任何事件。&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; line-height: 26px; text-align: left; background-color: #ffffff; "&gt;今天想加一个SelectedIndexChanged事件，遍寻网络后找到一可行方法，总结如下：&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; line-height: 26px; text-align: left; background-color: #ffffff; "&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; line-height: 26px; text-align: left; background-color: #ffffff; "&gt;&lt;/p&gt;&lt;div bg_c-sharp:showcolumns"="" style="width: 687px; "&gt;&lt;div&gt;&lt;div&gt;&lt;a href="http://blog.csdn.net/hejialin666/article/details/5036871#" title="view plain" style="background-image: url(http://static.blog.csdn.net/scripts/SyntaxHighlighter/styles/images/default/ico_plain.gif); border-width: initial; border-color: initial; padding-top: 1px; padding-right: 1px; padding-bottom: 1px; padding-left: 1px; display: inline-block; width: 16px; height: 16px; text-indent: -2000px; background-position: 0% 0%; background-repeat: no-repeat no-repeat; "&gt;view plain&lt;/a&gt;&lt;/div&gt;&lt;div style="width: 642px; "&gt;&lt;div style="line-height: 18px; "&gt;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;10&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;20&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;30&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;40&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;50&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;60&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;70&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;80&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;90&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;100&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;110&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;120&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;130&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;140&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;&amp;#183;150&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;ol start="1" style="border-width: initial; border-color: initial; "&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;DataGridViewComboBoxColumn&amp;nbsp;Fparmrangedesc&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;new&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;DataGridViewComboBoxColumn();&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;#8230;&amp;#8230;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;#8230;&amp;#8230;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;dgView.Columns.Add(Fparmrangedesc);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;dgView.EditingControlShowing&amp;nbsp;+=&amp;nbsp;&lt;span style="border-width: initial; border-color: initial; "&gt;new&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;DataGridViewEditingControlShowingEventHandler(dgView_EditingControlShowing);&amp;nbsp;&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;//主要是这句&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;写事件方法&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;private&lt;/span&gt;&amp;nbsp;&lt;span style="border-width: initial; border-color: initial; "&gt;void&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;dgView_EditingControlShowing(&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;object&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;sender,&amp;nbsp;DataGridViewEditingControlShowingEventArgs&amp;nbsp;e)&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;{&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="border-width: initial; border-color: initial; "&gt;if&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;(dgvReportParms.CurrentCell.GetType().Name&amp;nbsp;==&amp;nbsp;&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;"DataGridViewComboBoxCell"&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;)&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;((ComboBox)e.Control).SelectedIndexChanged&amp;nbsp;-=&amp;nbsp;&lt;span style="border-width: initial; border-color: initial; "&gt;new&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;EventHandler(ComboBox_SelectedIndexChanged);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;((ComboBox)e.Control).SelectedIndexChanged&amp;nbsp;+=&amp;nbsp;&lt;span style="border-width: initial; border-color: initial; "&gt;new&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;EventHandler(ComboBox_SelectedIndexChanged);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;}&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;private&lt;/span&gt;&amp;nbsp;&lt;span style="border-width: initial; border-color: initial; "&gt;void&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;ComboBox_SelectedIndexChanged(&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;object&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;sender,&amp;nbsp;EventArgs&amp;nbsp;e)&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;{&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;//里面想写什么你说了算！&lt;/span&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="border-width: initial; border-color: initial; line-height: 18px; "&gt;&lt;span style="border-width: initial; border-color: initial; "&gt;}&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; line-height: 26px; text-align: left; background-color: #ffffff; "&gt;最后，最重要的一步：把DataGridView的CausesValidation属性一定要改为false.(这一步是为什么我还没有搞清楚，希望各位高手帮我解释一下！谢谢了！)&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2312319.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2012/01/04/2312319.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2011/12/17/2291188.html</id><title type="text">C#常见面试题</title><summary type="text">1. 简述 private、 protected、 public、 internal 修饰符的访问权限。答 . private : 私有成员, 在类的内部才可以访问。 protected : 保护成员，该类内部和继承类中可以访问。 public : 公共成员，完全公开，没有访问限制。 internal: 在同一命名空间内可以访问。2 .列举ASP.NET 页面之间传递值的几种方式。 答. 1.使用QueryString, 如....?id=1; response. Redirect().... 2.使用Session变量 3.使用Server.Transfer3. 一列数的规则如下: 1、..</summary><published>2011-12-17T08:47:00Z</published><updated>2011-12-17T08:47:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2011/12/17/2291188.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2011/12/17/2291188.html"/><content type="html">&lt;div id="cnblogs_post_body"&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;1. 简述 private、 protected、 public、 internal 修饰符的访问权限。&lt;br /&gt;答 . private : 私有成员, 在类的内部才可以访问。 &lt;br /&gt;protected : 保护成员，该类内部和继承类中可以访问。 &lt;br /&gt;public : 公共成员，完全公开，没有访问限制。 &lt;br /&gt;internal: 在同一命名空间内可以访问。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;2 .列举ASP.NET 页面之间传递值的几种方式。 &lt;br /&gt;答. 1.使用QueryString, 如....?id=1; response. Redirect().... &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.使用Session变量 &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3.使用Server.Transfer&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;3. 一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少， 用递归算法实现。&lt;br /&gt;答：public class MainClass &lt;br /&gt;{ &lt;br /&gt;public static void Main() &lt;br /&gt;{ &lt;br /&gt;Console.WriteLine(Foo(30)); &lt;br /&gt;} &lt;br /&gt;public static int Foo(int i) &lt;br /&gt;{ &lt;br /&gt;if (i &amp;lt;= 0) &lt;br /&gt;return 0; &lt;br /&gt;else if(i &amp;gt; 0 &amp;amp;&amp;amp; i &amp;lt;= 2) &lt;br /&gt;return 1; &lt;br /&gt;else return Foo(i -1) + Foo(i - 2); &lt;br /&gt;} &lt;br /&gt;} &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;4.C#中的委托是什么？事件是不是一种委托？&lt;br /&gt;答 ： &lt;br /&gt;委托可以把一个方法作为参数代入另一个方法。&lt;br /&gt;委托可以理解为指向一个函数的引用。&lt;br /&gt;是，是一种特殊的委托&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;5.override与重载的区别&lt;br /&gt;答 ：&lt;br /&gt;override 与重载的区别。重载是方法的名称相同。参数或参数类型不同，进行多次重载以适应不同的需要&lt;br /&gt;Override 是进行基类中函数的重写。为了适应需要。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;6.如果在一个B/S结构的系统中需要传递变量值，但是又不能使用Session、Cookie、Application，您有几种方法进行处理？&lt;br /&gt;答 ： &lt;br /&gt;this.Server.Transfer&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;7.请编程遍历页面上所有TextBox控件并给它赋值为string.Empty？&lt;br /&gt;答：&lt;br /&gt;foreach (System.Windows.Forms.Control control in this.Controls)&lt;br /&gt;{&lt;br /&gt;if (control is System.Windows.Forms.TextBox)&lt;br /&gt;{&lt;br /&gt;System.Windows.Forms.TextBox tb = (System.Windows.Forms.TextBox)control ; &lt;br /&gt;tb.Text = String.Empty ;&lt;br /&gt;}&lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;8.请编程实现一个冒泡排序算法？&lt;br /&gt;答：&lt;br /&gt;int [] array = new int &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;;&lt;br /&gt;int temp = 0 ;&lt;br /&gt;for (int i = 0 ; i &amp;lt; array.Length - 1 ; i++)&lt;br /&gt;{&lt;br /&gt;for (int j = i + 1 ; j &amp;lt; array.Length ; j++)&lt;br /&gt;{&lt;br /&gt;if (array[j] &amp;lt; array[i])&lt;br /&gt;{&lt;br /&gt;temp = array[i] ;&lt;br /&gt;array[i] = array[j] ;&lt;br /&gt;array[j] = temp ;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;9.描述一下C#中索引器的实现过程，是否只能根据数字进行索引？&lt;br /&gt;答：不是。可以用任意类型。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;10.求以下表达式的值，写出您想到的一种或几种实现方法： 1-2+3-4+&amp;#8230;&amp;#8230;+m&lt;br /&gt;答：&lt;br /&gt;int Num = this.TextBox1.Text.ToString() ;&lt;br /&gt;int Sum = 0 ;&lt;br /&gt;for (int i = 0 ; i &amp;lt; Num + 1 ; i++)&lt;br /&gt;{&lt;br /&gt;if((i%2) == 1)&lt;br /&gt;{&lt;br /&gt;Sum += i ;&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;Sum = Sum - I ;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;System.Console.WriteLine(Sum.ToString());&lt;br /&gt;System.Console.ReadLine() ;&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;11.用.net做B/S结构的系统，您是用几层结构来开发，每一层之间的关系以及为什么要这样分层？&lt;br /&gt;答：一般为3层&lt;br /&gt;数据访问层，业务层，表示层。&lt;br /&gt;数据访问层对数据库进行增删查改。&lt;br /&gt;业务层一般分为二层，业务表观层实现与表示层的沟通，业务规则层实现用户密码的安全等。&lt;br /&gt;表示层为了与用户交互例如用户添加表单。&lt;br /&gt;优点： 分工明确，条理清晰，易于调试，而且具有可扩展性。&lt;br /&gt;缺点： 增加成本。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;12.在下面的例子里&lt;br /&gt;using System;&lt;br /&gt;class A&lt;br /&gt;{&lt;br /&gt;public A()&lt;br /&gt;{&lt;br /&gt;PrintFields();&lt;br /&gt;}&lt;br /&gt;public virtual void PrintFields(){}&lt;br /&gt;}&lt;br /&gt;class B:A&lt;br /&gt;{&lt;br /&gt;int x=1;&lt;br /&gt;int y;&lt;br /&gt;public B()&lt;br /&gt;{&lt;br /&gt;y=-1;&lt;br /&gt;}&lt;br /&gt;public override void PrintFields()&lt;br /&gt;{&lt;br /&gt;Console.WriteLine("x={0},y={1}",x,y);&lt;br /&gt;}&lt;br /&gt;当使用new B()创建B的实例时，产生什么输出？&lt;br /&gt;答：X=1,Y=0;x= 1 y = -1&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;13.什么叫应用程序域？&lt;br /&gt;答：应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;14.CTS、CLS、CLR分别作何解释？&lt;br /&gt;答：CTS：通用语言系统。CLS：通用语言规范。CLR：公共语言运行库。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;15.什么是装箱和拆箱？&lt;br /&gt;答：从值类型接口转换到引用类型装箱。从引用类型转换到值类型拆箱。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;16.什么是受管制的代码？&lt;br /&gt;答：unsafe：非托管代码。不经过CLR运行。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;17.什么是强类型系统？&lt;br /&gt;答：RTTI：类型识别系统。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;18.net中读写数据库需要用到那些类？他们的作用？&lt;br /&gt;答：DataSet:数据存储器。&lt;br /&gt;DataCommand:执行语句命令。&lt;br /&gt;DataAdapter:数据的集合，用语填充。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;19.ASP.net的身份验证方式有哪些？分别是什么原理？&lt;br /&gt;答：10。Windwos(默认)用IIS...From(窗体)用帐户....Passport(密钥)&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;20.什么是Code-Behind技术？&lt;br /&gt;答：代码后植。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;21.在.net中，配件的意思是？&lt;br /&gt;答：程序集。（中间语言，源数据，资源，装配清单）&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;22.常用的调用WebService的方法有哪些？&lt;br /&gt;答：1.使用WSDL.exe命令行工具。&lt;br /&gt;2.使用VS.NET中的Add Web Reference菜单选项&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;23..net Remoting 的工作原理是什么？&lt;br /&gt;答：服务器端向客户端发送一个进程编号，一个程序域编号，以确定对象的位置。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;24.在C＃中，string str = null 与 string str = &amp;#8220;&amp;#8221; 请尽量使用文字或图象说明其中的区别。 &lt;br /&gt;答：string str = null 是不给他分配内存空间,而string str = "" 给它分配长度为空字符串的内存空间。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;25.请详述在dotnet中类(class)与结构(struct)的异同？&lt;br /&gt;答：Class可以被实例化,属于引用类型,是分配在内存的堆上的,Struct属于值类型,是分配在内存的栈上的. &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;26.根据委托(delegate)的知识，请完成以下用户控件中代码片段的填写： &lt;br /&gt;namespace test &lt;br /&gt;{ &lt;br /&gt;public delegate void OnDBOperate(); &lt;br /&gt;public class UserControlBase : System.Windows.Forms.UserControl &lt;br /&gt;{ &lt;br /&gt;public event OnDBOperate OnNew; &lt;br /&gt;privatevoidtoolBar_ButtonClick(objectsender,System.Windows.Forms.ToolBarButtonClickEventArgs e)&lt;br /&gt;{ &lt;br /&gt;if(e.Button.Equals(BtnNew)) &lt;br /&gt;{ &lt;br /&gt;//请在以下补齐代码用来调用OnDBOperate委托签名的OnNew事件。&lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;}&lt;br /&gt;答：if( OnNew != null ) &lt;br /&gt;OnNew( this, e ); &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;27.分析以下代码，完成填空 &lt;br /&gt;string strTmp = "abcdefg某某某"; &lt;br /&gt;int i= System.Text.Encoding.Default.GetBytes(strTmp).Length; &lt;br /&gt;int j= strTmp.Length; &lt;br /&gt;以上代码执行完后，i= j= &lt;br /&gt;答：i=13,j=10 &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;28.SQLSERVER服务器中，给定表 table1 中有两个字段 ID、LastUpdateDate，ID表示更新的事务号， LastUpdateDate表示更新时的服务器时间，请使用一句SQL语句获得最后更新的事务号&lt;br /&gt;答：Select ID FROM table1 Where LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1) &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;29.根据线程安全的相关知识，分析以下代码，当调用test方法时i&amp;gt;10时是否会引起死锁?并简要说明理由。&lt;br /&gt;public void test(int i) &lt;br /&gt;{ &lt;br /&gt;lock(this) &lt;br /&gt;{ &lt;br /&gt;if (i&amp;gt;10) &lt;br /&gt;{ &lt;br /&gt;i--; &lt;br /&gt;test(i); &lt;br /&gt;} &lt;br /&gt;} &lt;br /&gt;}&lt;br /&gt;答：不会发生死锁，（但有一点int是按值传递的，所以每次改变的都只是一个副本，因此不会出现死锁。但如果把int换做一个object，那么死锁会发生）&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;30.简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。&lt;br /&gt;答：WS主要是可利用HTTP，穿透防火墙。而Remoting可以利用TCP/IP，二进制传送提高效率。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;31.公司要求开发一个继承System.Windows.Forms.ListView类的组件，要求达到以下的特殊功能：点击ListView各列列头时，能按照点击列的每行值进行重排视图中的所有行 (排序的方式如DataGrid相似)。根据您的知识，请简要谈一下您的思路&lt;br /&gt;答：根据点击的列头,包该列的ID取出,按照该ID排序后,在给绑定到ListView中。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;32.给定以下XML文件，完成算法流程图。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;&amp;lt; DriverC &amp;gt; &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;请画出遍历所有文件名（FileName）的流程图(请使用递归算法)。&lt;br /&gt;答：&lt;br /&gt;void FindFile( Directory d ) &lt;br /&gt;{ &lt;br /&gt;FileOrFolders = d.GetFileOrFolders(); &lt;br /&gt;foreach( FileOrFolder fof in FileOrFolders ) &lt;br /&gt;{ &lt;br /&gt;if( fof is File ) &lt;br /&gt;You Found a file; &lt;br /&gt;else if ( fof is Directory ) &lt;br /&gt;FindFile( fof ); &lt;br /&gt;} &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;33.写出一条Sql语句：取出表A中第31到第40记录（SQLServer,以自动增长的ID作为主键,注意：ID可能不是连续的。&lt;br /&gt;答：解1: select top 10 * from A where id not in (select top 30 id from A) &lt;br /&gt;解2: select top 10 * from A where id &amp;gt; (select max(id) from (select top 30 id from A )as A) &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;34.面向对象的语言具有________性、_________性、________性&lt;br /&gt;答：封装、继承、多态。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;35.能用foreach遍历访问的对象需要实现 ________________接口或声明________________方法的类型。&lt;br /&gt;答：IEnumerable 、 GetEnumerator。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;36.GC是什么? 为什么要有GC?&lt;br /&gt;答：GC是垃圾收集器。程序员不用担心内存管理，因为垃圾收集器会自动进行管理。要请求垃圾收集，可以调用下面的方法之一： &lt;br /&gt;System.gc()&lt;br /&gt;Runtime.getRuntime().gc()&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;37.String s = new String("xyz");创建了几个String Object?&lt;br /&gt;答：两个对象，一个是&amp;#8220;xyx&amp;#8221;,一个是指向&amp;#8220;xyx&amp;#8221;的引用对象s。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;38.abstract class和interface有什么区别?&lt;br /&gt;答：&lt;br /&gt;声明方法的存在而不去实现它的类被叫做抽象类（abstract class），它用于要创建一个体现某些基本行为的类，并为该类声明方法，但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量，其类型是一个抽象类，并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现，否则它们也是抽象类为。取而代之，在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。&lt;br /&gt;接口（interface）是抽象类的变体。在接口中，所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的，没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似，除了该实现类不能从接口定义中继承行为。当类实现特殊接口时，它定义（即将程序体给予）所有这种接口的方法。然后，它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类，它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换，instanceof 运算符可以用来决定某对象的类是否实现了接口。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;39.启动一个线程是用run()还是start()?&lt;br /&gt;答：启动一个线程是调用start()方法，使线程所代表的虚拟处理机处于可运行状态，这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。run()方法可以产生必须退出的标志来停止一个线程。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;40.接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?&lt;br /&gt;答：接口可以继承接口。抽象类可以实现(implements)接口，抽象类是否可继承实体类，但前提是实体类必须有明确的构造函数。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;41.构造器Constructor是否可被override?&lt;br /&gt;答：构造器Constructor不能被继承，因此不能重写Overriding，但可以被重载Overloading。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;42.是否可以继承String类?&lt;br /&gt;答：String类是final类故不可以继承。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;43.try {}里有一个return语句，那么紧跟在这个try后的finally {}里的code会不会被执行，什么时候被执行，在return前还是后?&lt;br /&gt;答：会执行，在return前执行。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;44.两个对象值相同(x.equals(y) == true)，但却可有不同的hash code，这句话对不对?&lt;br /&gt;答：不对，有相同的hash code。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;45.swtich是否能作用在byte上，是否能作用在long上，是否能作用在String上?&lt;br /&gt;答：switch（expr1）中，expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string 都不能作用于swtich。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;47.当一个线程进入一个对象的一个synchronized方法后，其它线程是否可进入此对象的其它方法?&lt;br /&gt;不能，一个对象的一个synchronized方法只能由一个线程访问。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;48.abstract的method是否可同时是static,是否可同时是native，是否可同时是synchronized?&lt;br /&gt;答：都不能。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;49.List, Set, Map是否继承自Collection接口?&lt;br /&gt;答：List，Set是Map不是&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;50.Set里的元素是不能重复的，那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?&lt;br /&gt;答：Set里的元素是不能重复的，那么用iterator()方法来区分重复与否。equals()是判读两个Set是否相等。&lt;br /&gt;equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖，为的是当两个分离的对象的内容和类型相配的话，返回真值。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;51.数组有没有length()这个方法? String有没有length()这个方法？&lt;br /&gt;答：数组没有length()这个方法，有length的属性。String有有length()这个方法。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;52.sleep() 和 wait() 有什么区别?&lt;br /&gt;答：sleep()方法是使线程停止一段时间的方法。在sleep 时间间隔期满后，线程不一定立即恢复执行。这是因为在那个时刻，其它线程可能正在运行而且没有被调度为放弃执行，除非(a)&amp;#8220;醒来&amp;#8221;的线程具有更高的优先级&lt;br /&gt;(b)正在运行的线程因为其它原因而阻塞。&lt;br /&gt;wait()是线程交互时，如果线程对一个同步对象x 发出一个wait()调用，该线程会暂停执行，被调对象进入等待状态，直到被唤醒或等待时间到。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;53.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?&lt;br /&gt;答：short s1 = 1; s1 = s1 + 1;有错，s1是short型，s1+1是int型,不能显式转化为short型。可修改为s1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正确。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;54.谈谈final, finally, finalize的区别。&lt;br /&gt;答：&lt;br /&gt;final&amp;#8212;修饰符（关键字）如果一个类被声明为final，意味着它不能再派生出新的子类，不能作为父类被继承。因此 一个类不能既被声明为 abstract的，又被声明为final的。将变量或方法声明为final，可以保证它们在使用中 不被改变。被声明为final的变量必须在声明时给定初值，而在以后的引用中只能读取，不可修改。被声明为 final的方法也同样只能使用，不能重载&lt;br /&gt;finally&amp;#8212;再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常，那么相匹配的 catch 子句就会 执行，然后控制就会进入 finally 块（如果有的话）。&lt;br /&gt;finalize&amp;#8212;方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理 工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的 ，因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;55.如何处理几十万条并发数据？&lt;br /&gt;答：用存储过程或事务。取得最大标识的时候同时更新..注意主键不是自增量方式这种方法并发的时候是不会有重复主键的..取得最大标识要有一个存储过程来获取.&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;56.Session有什么重大BUG，微软提出了什么方法加以解决？&lt;br /&gt;答：是iis中由于有进程回收机制，系统繁忙的话Session会丢失，可以用Sate server或SQL Server数据库的方式存储Session不过这种方式比较慢，而且无法捕获Session的END事件。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;57.进程和线程的区别？&lt;br /&gt;答：进程是系统进行资源分配和调度的单位；线程是CPU调度和分派的单位，一个进程可以有多个线程，这些线程共享这个进程的资源。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;58.堆和栈的区别？&lt;br /&gt;答：&lt;br /&gt;栈：由编译器自动分配、释放。在函数体中定义的变量通常在栈上。&lt;br /&gt;堆：一般由程序员分配释放。用new、malloc等分配内存函数分配得到的就是在堆上。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;59.成员变量和成员函数前加static的作用？&lt;br /&gt;答：它们被称为常成员变量和常成员函数，又称为类成员变量和类成员函数。分别用来反映类的状态。比如类成员变量可以用来统计类实例的数量，类成员函数负责这种统计的动作。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;60.ASP。NET与ASP相比，主要有哪些进步？&lt;br /&gt;答：asp解释形，aspx编译型，性能提高，有利于保护源码。&lt;br /&gt;61.产生一个int数组，长度为100，并向其中随机插入1-100，并且不能重复。&lt;br /&gt;int[] intArr=new int[100];&lt;br /&gt;ArrayList myList=new ArrayList();&lt;br /&gt;Random rnd=new Random();&lt;br /&gt;while(myList.Count&amp;lt;100)&lt;br /&gt;{&lt;br /&gt;int num=rnd.Next(1,101);&lt;br /&gt;if(!myList.Contains(num))&lt;br /&gt;myList.Add(num);&lt;br /&gt;}&lt;br /&gt;for(int i=0;i&amp;lt;100;i++)&lt;br /&gt;intArr[i]=(int)myList[i];&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;62.请说明在.net中常用的几种页面间传递参数的方法，并说出他们的优缺点。&lt;br /&gt;答：session(viewstate) 简单，但易丢失&lt;br /&gt;application 全局&lt;br /&gt;cookie 简单，但可能不支持，可能被伪造&lt;br /&gt;input ttype="hidden" 简单，可能被伪造&lt;br /&gt;url参数 简单，显示于地址栏，长度有限&lt;br /&gt;数据库 稳定，安全，但性能相对弱&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;63.请指出GAC的含义？&lt;br /&gt;答：全局程序集缓存。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;64.向服务器发送请求有几种方式？&lt;br /&gt;答：get,post。get一般为链接方式，post一般为按钮方式。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;65.DataReader与Dataset有什么区别？&lt;br /&gt;答：一个是只能向前的只读游标，一个是内存中的表。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;66.软件开发过程一般有几个阶段？每个阶段的作用？&lt;br /&gt;答：需求分析，架构设计，代码编写，QA，部署&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;67.在c#中using和new这两个关键字有什么意义，请写出你所知道的意义？using 指令 和语句 new 创建实例 new 隐藏基类中方法。&lt;br /&gt;答：using 引入名称空间或者使用非托管资源&lt;br /&gt;new 新建实例或者隐藏父类方法&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;68.需要实现对一个字符串的处理,首先将该字符串首尾的空格去掉,如果字符串中间还有连续空格的话,仅保留一个空格,即允许字符串中间有多个空格,但连续的空格数不可超过一个.&lt;br /&gt;答：string inputStr=" xx xx ";&lt;br /&gt;inputStr=Regex.Replace(inputStr.Trim()," *"," ");&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;69.下面这段代码输出什么？为什么？&lt;br /&gt;int i=5;&lt;br /&gt;int j=5;&lt;br /&gt;if (Object.ReferenceEquals(i,j))&lt;br /&gt;Console.WriteLine("Equal");&lt;br /&gt;else&lt;br /&gt;Console.WriteLine("Not Equal");&lt;br /&gt;答：不相等，因为比较的是对象&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;70.什么叫做SQL注入，如何防止？请举例说明。&lt;br /&gt;答：利用sql关键字对网站进行攻击。过滤关键字'等&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;71.什么是反射？&lt;br /&gt;答：动态获取程序集信息&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;72.用Singleton如何写设计模式&lt;br /&gt;答：static属性里面new ,构造函数private&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;73.什么是Application Pool？&lt;br /&gt;答：Web应用，类似Thread Pool，提高并发性能。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;74.什么是虚函数？什么是抽象函数？&lt;br /&gt;答：虚函数：没有实现的，可由子类继承并重写的函数。抽象函数：规定其非虚子类必须实现的函数，必须被重写。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;75.什么是XML？&lt;br /&gt;答：XML即可扩展标记语言。eXtensible Markup Language.标记是指计算机所能理解的信息符号，通过此种标记，计算机之间可以处理包含各种信息的文章等。如何定义这些标记，即可以选择国际通用的标记语言，比如HTML，也可以使用象XML这样由相关人士自由决定的标记语言，这就是语言的可扩展性。XML是从SGML中简化修改出来的。它主要用到的有XML、XSL和XPath等。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;76.什么是Web Service？UDDI？&lt;br /&gt;答：Web Service便是基于网络的、分布式的模块化组件，它执行特定的任务，遵守具体的技术规范，这些规范使得Web Service能与其他兼容的组件进行互操作。&lt;br /&gt;　 UDDI 的目的是为电子商务建立标准；UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范，同时也包含一组使企业能将自身提供的Web Service注册，以使别的企业能够发现的访问协议的实现标准。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;77.什么是ASP.net中的用户控件？&lt;br /&gt;答：用户控件一般用在内容多为静态,或者少许会改变的情况下..用的比较大..类似ASP中的include..但是功能要强大的多。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;78.列举一下你所了解的XML技术及其应用&lt;br /&gt;答：xml用于配置,用于保存静态数据类型.接触XML最多的是web Services..和config&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;79.ADO.net中常用的对象有哪些？分别描述一下。&lt;br /&gt;答：Connection 数据库连接对象&lt;br /&gt;Command 数据库命令&lt;br /&gt;DataReader 数据读取器&lt;br /&gt;DataSet 数据集&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;80.什么是code-Behind技术。&lt;br /&gt;答：ASPX,RESX和CS三个后缀的文件，这个就是代码分离.实现了HTML代码和服务器代码分离.方便代码编写和整理.&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;81.什么是SOAP,有哪些应用。&lt;br /&gt;答：simple object access protocal,简单对象接受协议.以xml为基本编码结构,建立在已有通信协议上(如http,不过据说ms在搞最底层的架构在tcp/ip上的soap)的一种规范Web Service使用的协议..&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;82.C#中 property 与 attribute的区别，他们各有什么用处，这种机制的好处在哪里？&lt;br /&gt;答：一个是属性，用于存取类的字段，一个是特性，用来标识类，方法等的附加性质&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;83.XML 与 HTML 的主要区别&lt;br /&gt;答：1. XML是区分大小写字母的，HTML不区分。 &lt;br /&gt;2. 在HTML中，如果上下文清楚地显示出段落或者列表键在何处结尾，那么你可以省略&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;或者之类的结束 标记。在XML中，绝对不能省略掉结束标记。 &lt;br /&gt;3. 在XML中，拥有单个标记而没有匹配的结束标记的元素必须用一个 / 字符作为结尾。这样分析器就知道不用 查找结束标记了。 &lt;br /&gt;4. 在XML中，属性值必须分装在引号中。在HTML中，引号是可用可不用的。 &lt;br /&gt;5. 在HTML中，可以拥有不带值的属性名。在XML中，所有的属性都必须带有相应的值。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;84.c#中的三元运算符是？&lt;br /&gt;答：？：。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;85.当整数a赋值给一个object对象时，整数a将会被？&lt;br /&gt;答：装箱。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;86.类成员有_____种可访问形式？&lt;br /&gt;答：this.;new Class().Method;&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;87.public static const int A=1;这段代码有错误么？是什么？&lt;br /&gt;答：const不能用static修饰。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;88.float f=-123.567F; int i=(int)f;i的值现在是_____? &lt;br /&gt;答：-123。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;89.委托声明的关键字是______?&lt;br /&gt;答：delegate.&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;90.用sealed修饰的类有什么特点？&lt;br /&gt;答：密封，不能继承。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;91.在Asp.net中所有的自定义用户控件都必须继承自________?&lt;br /&gt;答：Control。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;92.在.Net中所有可序列化的类都被标记为_____? &lt;br /&gt;答：[serializable]&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;93.在.Net托管代码中我们不用担心内存漏洞，这是因为有了______?&lt;br /&gt;答：GC。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;94.下面的代码中有什么错误吗？_______&lt;br /&gt;using System;&lt;br /&gt;class A&lt;br /&gt;{&lt;br /&gt;public virtual void F(){&lt;br /&gt;Console.WriteLine("A.F");&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;abstract class B:A&lt;br /&gt;{&lt;br /&gt;public abstract override void F(); 答：abstract override 是不可以一起修饰. &lt;br /&gt;} // new public abstract void F(); &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;95.当类T只声明了私有实例构造函数时，则在T的程序文本外部，___可以___（可以 or 不可以）从T派生出新的类，不可以____（可以 or 不可以）直接创建T的任何实例。&lt;br /&gt;答：不可以，不可以。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;96.下面这段代码有错误么？&lt;br /&gt;switch (i){&lt;br /&gt;case(): 答：//case()条件不能为空&lt;br /&gt;CaseZero();&lt;br /&gt;break;&lt;br /&gt;case 1:&lt;br /&gt;CaseOne();&lt;br /&gt;break;&lt;br /&gt;case 2:&lt;br /&gt;dufault; 答：//wrong，格式不正确&lt;br /&gt;CaseTwo();&lt;br /&gt;break;&lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;97.在.Net中，类System.Web.UI.Page 可以被继承么？&lt;br /&gt;答：可以。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;98..net的错误处理机制是什么？&lt;br /&gt;答：.net错误处理机制采用try-&amp;gt;catch-&amp;gt;finally结构，发生错误时，层层上抛，直到找到匹配的Catch为止。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;99.利用operator声明且仅声明了==，有什么错误么?&lt;br /&gt;答：要同时修改Equale和GetHash() ? 重载了"==" 就必须重载 "!="&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;100.在.net（C# or vb.net）中如何用户自定义消息，并在窗体中处理这些消息。&lt;br /&gt;答：在form中重载DefWndProc函数来处理消息:&lt;br /&gt;protected override void DefWndProc ( ref System.WinForms.Message m ) &lt;br /&gt;{ &lt;br /&gt;switch(m.msg) &lt;br /&gt;{ &lt;br /&gt;case WM_Lbutton : &lt;br /&gt;　 ///string与MFC中的CString的Format函数的使用方法有所不同 &lt;br /&gt;　 string message = string.Format("收到消息!参数为:{0},{1}",m.wParam,m.lParam); &lt;br /&gt;　 MessageBox.Show(message);///显示一个消息框 &lt;br /&gt;　 break; &lt;br /&gt;case USER:&lt;br /&gt;处理的代码&lt;br /&gt;default: &lt;br /&gt;　 base.DefWndProc(ref m);///调用基类函数处理非自定义消息。 &lt;br /&gt;　 break; &lt;br /&gt;} &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;101.在.net（C# or vb.net）中如何取消一个窗体的关闭。&lt;br /&gt;答：private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)&lt;br /&gt;{&lt;br /&gt;e.Cancel=true;&lt;br /&gt;} &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;102.在.net（C# or vb.net）中，Appplication.Exit 还是 Form.Close有什么不同？&lt;br /&gt;答：一个是退出整个应用程序，一个是关闭其中一个form。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;103.在C#中有一个double型的变量，比如10321.5，比如122235401.21644，作为货币的值如何按各个不同国家的习惯来输出。比如美国用$10,321.50和$122，235，401.22而在英国则为￡10 321.50和￡122 235 401.22&lt;br /&gt;答：System.Globalization.CultureInfo MyCulture = new System.Globalization.CultureInfo("en-US");&lt;br /&gt;//System.Globalization.CultureInfo MyCulture = new System.Globalization.CultureInfo("en-GB");为英 国 货币类型&lt;br /&gt;decimal y = 9999999999999999999999999999m;&lt;br /&gt;string str = String.Format(MyCulture,"My amount = {0:c}",y);&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;104.某一密码仅使用K、L、M、N、O共5个字母，密码中的单词从左向右排列，密码单词必须遵循如下规则：&lt;br /&gt;（1） 密码单词的最小长度是两个字母，可以相同，也可以不同&lt;br /&gt;（2） K不可能是单词的第一个字母&lt;br /&gt;（3） 如果L出现，则出现次数不止一次&lt;br /&gt;（4） M不能使最后一个也不能是倒数第二个字母&lt;br /&gt;（5） K出现，则N就一定出现&lt;br /&gt;（6） O如果是最后一个字母，则L一定出现&lt;br /&gt;问题一：下列哪一个字母可以放在LO中的O后面，形成一个3个字母的密码单词？&lt;br /&gt;A) K B)L C) M D) N&lt;br /&gt;答案:B&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;问题二：如果能得到的字母是K、L、M，那么能够形成的两个字母长的密码单词的总数是多少？&lt;br /&gt;A)1个 B)3个 C)6个 D）9个&lt;br /&gt;答案:A&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;问题三：下列哪一个是单词密码？&lt;br /&gt;A) KLLN B) LOML C) MLLO D)NMKO&lt;br /&gt;答案:C&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;8. 62-63=1 等式不成立，请移动一个数字（不可以移动减号和等于号），使得等式成立，如何移动？&lt;br /&gt;答案:62移动成2的6次方&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;105.对于这样的一个枚举类型：&lt;br /&gt;enum Color:byte&lt;br /&gt;{&lt;br /&gt;Red,&lt;br /&gt;Green,&lt;br /&gt;Blue,&lt;br /&gt;orange&lt;br /&gt;}&lt;br /&gt;答：string[] ss=Enum.GetNames(typeof(Color));&lt;br /&gt;byte[] bb=Enum.GetValues(typeof(Color));&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;106. C#中 property 与 attribute的区别，他们各有什么用处，这种机制的好处在哪里？&lt;br /&gt;答：attribute:自定义属性的基类;property :类中的属性&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;107.C#可否对内存进行直接的操作？&lt;br /&gt;答：在.net下，.net引用了垃圾回收（GC）功能，它替代了程序员 不过在C#中，不能直接实现Finalize方法，而是在析构函数中调用基类的Finalize()方法&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;108.ADO。NET相对于ADO等主要有什么改进？&lt;br /&gt;答：1:ado.net不依赖于ole db提供程序,而是使用.net托管提供的程序,2:不使用com3:不在支持动态游标和服务器端游 4:,可以断开connection而保留当前数据集可用 5:强类型转换 6:xml支持&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;109.写一个HTML页面，实现以下功能，左键点击页面时显示&amp;#8220;您好&amp;#8221;，右键点击时显示&amp;#8220;禁止右键&amp;#8221;。并在2分钟后自动关闭页面。&lt;br /&gt;答： &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;110.大概描述一下ASP。NET服务器控件的生命周期&lt;br /&gt;答：初始化 加载视图状态 处理回发数据 加载 发送回发更改通知 处理回发事件 预呈现 保存状态 呈现 处置 卸载&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;111.Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类，是否可以implements(实现)interface(接口)?&lt;br /&gt;答：不能，可以实现接口&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;112.Static Nested Class 和 Inner Class的不同，说得越多越好&lt;br /&gt;答：Static Nested Class是被声明为静态（static）的内部类，它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;113.，&amp;amp;和&amp;amp;&amp;amp;的区别。&lt;br /&gt;&amp;amp;是位运算符，表示按位与运算，&amp;amp;&amp;amp;是逻辑运算符，表示逻辑与（and）.&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;114.HashMap和Hashtable的区别。&lt;br /&gt;答：HashMap是Hashtable的轻量级实现（非线程安全的实现），他们都完成了Map接口，主要区别在于HashMap允许空（null）键值（key）,由于非线程安全，效率上可能高于Hashtable.&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;115.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?&lt;br /&gt;答：short s1 = 1; s1 = s1 + 1; （s1+1运算结果是int型，需要强制转换类型）&lt;br /&gt;short s1 = 1; s1 += 1;（可以正确编译）&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;116.Overloaded的方法是否可以改变返回值的类型?&lt;br /&gt;答：Overloaded的方法是可以改变返回值的类型。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;117.error和exception有什么区别?&lt;br /&gt;答：error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。&lt;br /&gt;exception 表示一种设计或实现问题。也就是说，它表示如果程序运行正常，从不会发生的情况。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;118. 和 有什么区别？&lt;br /&gt;答：表示绑定的数据源&lt;br /&gt;是服务器端代码块&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;119.你觉得ASP.NET 2.0（VS2005）和你以前使用的开发工具（.Net 1.0或其他）有什么最大的区别？你在以前的平台上使用的哪些开发思想（pattern / architecture）可以移植到ASP.NET 2.0上 (或者已经内嵌在ASP.NET 2.0中)&lt;br /&gt;答：1 ASP.NET 2.0 把一些代码进行了封装打包,所以相比1.0相同功能减少了很多代码.&lt;br /&gt;2 同时支持代码分离和页面嵌入服务器端代码两种模式,以前1.0版本,.NET提示帮助只有在分离的代码文件,无 法 在页面嵌入服务器端代码获得帮助提示,&lt;br /&gt;3 代码和设计界面切换的时候,2.0支持光标定位.这个我比较喜欢&lt;br /&gt;4 在绑定数据,做表的分页.Update,Delete,等操作都可以可视化操作,方便了初学者&lt;br /&gt;5 在ASP.NET中增加了40多个新的控件,减少了工作量&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;120.重载与覆盖的区别？&lt;br /&gt;答：1、方法的覆盖是子类和父类之间的关系，是垂直关系；方法的重载是同一个类中方法之间的关系，是水平关系&lt;br /&gt;2、覆盖只能由一个方法，或只能由一对方法产生关系；方法的重载是多个方法之间的关系。&lt;br /&gt;3、覆盖要求参数列表相同；重载要求参数列表不同。&lt;br /&gt;4、覆盖关系中，调用那个方法体，是根据对象的类型（对象对应存储空间类型）来决定；重载关系，是根据调 用时的实参表与形参表来选择方法体的。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;121.描述一下C#中索引器的实现过程，是否只能根据数字进行索引？ &lt;br /&gt;答：不是。可以用任意类型。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;122.在C＃中，string str = null 与 string str = " " 请尽量使用文字或图象说明其中的区别。&lt;br /&gt;答：null是没有空间引用的；&lt;br /&gt;" " 是空间为0的字符串；&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;123.分析以下代码，完成填空&lt;br /&gt;string strTmp = "abcdefg某某某"; &lt;br /&gt;int i= System.Text.Encoding.Default.GetBytes(strTmp).Length; &lt;br /&gt;int j= strTmp.Length; &lt;br /&gt;以上代码执行完后，i= j= &lt;br /&gt;答：i=13.j=10&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;124.SQLSERVER服务器中，给定表 table1 中有两个字段 ID、LastUpdateDate，ID表示更新的事务号， LastUpdateDate表示更新时的服务器时间，请使用一句SQL语句获得最后更新的事务号&lt;br /&gt;答：Select ID FROM table1 Where LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1) &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;125.分析以下代码。&lt;br /&gt;public static void test(string ConnectString) &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;{ &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection(); &lt;br /&gt;conn.ConnectionString = ConnectString; &lt;br /&gt;try &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;{ &lt;br /&gt;conn.Open(); &lt;br /&gt;&amp;#8230;&amp;#8230;. &lt;br /&gt;}&lt;br /&gt;catch(Exception Ex) &lt;br /&gt;{ &lt;br /&gt;MessageBox.Show(Ex.ToString()); &lt;br /&gt;}&lt;br /&gt;finally &lt;br /&gt;{ &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;if (!conn.State.Equals(ConnectionState.Closed)) &lt;br /&gt;conn.Close(); &lt;br /&gt;} &lt;br /&gt;}&lt;br /&gt;请问 &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;1)以上代码可以正确使用连接池吗？ &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;答：回答：如果传入的connectionString是一模一样的话，可以正确使用连接池。不过一模一样的意思是，连字符的空格数，顺序完全一致。 &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;2)以上代码所使用的异常处理方法，是否所有在test方法内的异常都可以被捕捉并显示出来？ &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;答：只可以捕捉数据库连接中的异常吧. （finally中，catch中，如果有别的可能引发异常的操作，也应该用try,catch。所以理论上并非所有异常都会被捕捉。） &lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;126.公司要求开发一个继承System.Windows.Forms.ListView类的组件，要求达到以下的特殊功能：点击ListView各列列头时，能按照点击列的每行值进行重排视图中的所有行 (排序的方式如DataGrid相似)。根据您的知识，请简要谈一下您的思路：&lt;br /&gt;答：根据点击的列头,包该列的ID取出,按照该ID排序后,在给绑定到ListView中&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;127.什么是WSE？目前最新的版本是多少？&lt;br /&gt;答：WSE (Web Service Extension) 包来提供最新的WEB服务安全保证，目前最新版本2.0。&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;128.在下面的例子里&lt;br /&gt;using System;&lt;br /&gt;class A&lt;br /&gt;{&lt;br /&gt;public A(){&lt;br /&gt;PrintFields();&lt;br /&gt;}&lt;br /&gt;public virtual void PrintFields(){}&lt;br /&gt;}&lt;br /&gt;class B:A&lt;br /&gt;{&lt;br /&gt;int x=1;&lt;br /&gt;int y;&lt;br /&gt;public B(){&lt;br /&gt;y=-1;&lt;br /&gt;}&lt;br /&gt;public override void PrintFields(){&lt;br /&gt;Console.WriteLine("x={0},y={1}",x,y);&lt;br /&gt;}&lt;br /&gt;当使用new B()创建B的实例时，产生什么输出？&lt;br /&gt;答：X=1,Y=0&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;129.下面的例子中&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font face="Courier New"&gt;using System;&lt;br /&gt;class A&lt;br /&gt;{&lt;br /&gt;public static int X;&lt;br /&gt;static A(){&lt;br /&gt;X=B.Y+1;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;class B&lt;br /&gt;{&lt;br /&gt;public static int Y=A.X+1;&lt;br /&gt;static B(){}&lt;br /&gt;static void Main(){&lt;br /&gt;Console.WriteLine("X={0},Y={1}",A.X,B.Y);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;产生的输出结果是什么？&lt;br /&gt;答：x=1,y=2&lt;/font&gt;&lt;/p&gt;&lt;font face="Courier New"&gt;&#xD;
&lt;p&gt;&lt;font face="Verdana"&gt;&lt;span style="color: red"&gt;&lt;font face="Verdana"&gt;130.abstract class和interface有什么区别?&lt;/font&gt;&lt;/span&gt;&lt;br /&gt;&lt;/font&gt;&lt;span style="color: #0000ff"&gt;答：&lt;br /&gt;声明方法的存在而不去实现它的类被叫做抽象类（abstract class），它用于要创建一个体现某些基本行为的类，并为该类声明方法，但不能在该类中实现该类的情况。&lt;br /&gt;不能创建abstract 类的实例。然而可以创建一个变量，其类型是一个抽象类，并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。&lt;br /&gt;Abstract 类的子类为它们父类中的所有抽象方法提供实现，否则它们也是抽象类为。取而代之，在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。&lt;/span&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/font&gt;&lt;span style="color: #0000ff"&gt;接口（interface）是抽象类的变体。在接口中，所有方法都是抽象的。多继承性可通过实现这样的接口而获得。&lt;br /&gt;接口中的所有方法都是抽象的，没有一个有程序体。接口只可以定义static final成员变量。&lt;br /&gt;接口的实现与子类相似，除了该实现类不能从接口定义中继承行为。当类实现特殊接口时，它定义（即将程序体给予）所有这种接口的方法。&lt;br /&gt;然后，它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类，它允许使用接口名作为引用变量的类型。通常的动态联编将生效。&lt;br /&gt;引用可以转换到接口类型或从接口类型转换，instanceof 运算符可以用来决定某对象的类是否实现了接口。&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2291188.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2011/12/17/2291188.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2011/12/12/2284805.html</id><title type="text">VisualSVN Server + Tortoise SVN 使用教程（补充版）</title><summary type="text">1Visual SVN Server的使用修改者：Nancy编者按：本文是SVN中文网看到的文章，之后做了一些补充与修改，希望可以给大家提供更详细的信息。如果转载请注明出处。1.为什么要用VisualSVN Server，而不用Subversion？回答：因为如果直接使用Subversion，那么在Windows 系统上，要想让它随系统启动，就要封装SVN Server为windws service，还要通过修改配置文件来控制用户权限，另外如果要想以Web方式【http协议】访问，一般还要安装配置Apache，如果是新手，岂不是很头痛？而VisualSVN Serve集成了Subversion</summary><published>2011-12-12T06:33:00Z</published><updated>2011-12-12T06:33:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2011/12/12/2284805.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2011/12/12/2284805.html"/><content type="html">&lt;span  style="line-height: 26px; background-color: #ffffff; "&gt;&lt;h1 style="margin-top: 17pt; margin-right: 0cm; margin-bottom: 16.5pt; margin-left: 21.6pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span lang="EN-US"&gt;&lt;span style="line-height: 26px; "&gt;&lt;h1 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span&gt;1&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;Visual SVN Server&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;的使用&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-large; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;修改者：Nancy&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;编者按：本文是SVN中文网看到的文章，之后做了一些补充与修改，希望可以给大家提供更详细的信息。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: 12pt; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;如果转载请注明出处。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: 12pt; font-family: 宋体; "&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;1.为什么要用VisualSVN Server，而不用Subversion？&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;回答：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;因为如果直接使用Subversion，那么在Windows 系统上，要想让它随系统启动，就要封装SVN Server为windws service，还要通过修改配置文件来控制用户权限，另外如果要想以Web方式【http协议】访问，一般还要安装配置Apache，如果是新手，岂不是很头痛？而VisualSVN Serve集成了Subversion和Apache，省去了以上所有的麻烦。安装的时候SVN Server已经封装为windws service，Apache服务器的配置也只是在图像界面上，指定认证方式、访问端口等简单操作；另外，用户权限的管理也是通过图像界面来配置。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;2.VisualSVN Server是免费的吗？&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;回答:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;是的，VisualSVN Server是免费的，而VisualSVN是收费的。VisualSVN是SVN的客户端，和Visual Studio集成在一起， VisualSvn Server是SVN的服务器端，包括Subversion、Apache和用户及权限管理，优点在上面已经说过了。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;好了，言归正传，正式开始我们今天的教程。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="line-height: 31px; "&gt;2&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="line-height: 31px; "&gt;VisualSVN Server&lt;/span&gt;&lt;/span&gt;&lt;span style="line-height: 31px; font-family: 宋体; "&gt;的配置和使用方法【服务器端】&lt;/span&gt;&lt;span style="line-height: 31px; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;安装好VisualSVN Server后【安装过程看这里】，运行VisualSVN Server Manger，下面是启动界面：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: 12pt; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292477378hyAi.jpg" alt="" width="683" height="388" style="border-width: initial; border-color: initial; " /&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;好的，下面我来添加一个代码库【Repository】，如下图：&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795734SoD.jpg" alt="" width="683" height="384" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;按上图所示，创建新的代码库，在下图所示的文本框中输入代码库名称：&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479574OcGL.jpg" alt="" width="683" height="384" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: 12pt; font-family: 宋体; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;注意：上图中的CheckBox如果选中，则在代码库StartKit下面会创建trunk、branches、tags三个子目录；不选中，则只创建空的代码库StartKit。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击OK按钮，代码库就创建成功了。&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479574VfiQ.jpg" alt="" width="683" height="384" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;创建完代码库后，没有任何内容在里面。我会在这个教程的第二部分说明如何迁入源代码。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;补充：此处涉及到SVN目录的使用策略，可以参考&lt;span style="text-decoration: underline; "&gt;8.1&lt;span&gt;&amp;nbsp;&amp;nbsp;Recommended Repository Layout&lt;/span&gt;.如果有多个Project,此处可以先不选择&amp;#8220;Create default structure&amp;#8221;，假如当前已经创建了Repository StartKit,那么右击Repository StartKit,可以在这个仓库中创建多个Project,每个Project将会有自己的trunk,tag, branch目录.如下图所示。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479574hZaM.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: 12pt; font-family: 宋体; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;下面，我们开始安全性设置，在左侧的Users上点击右键：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795752w3k.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795759tJQ.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;输入上面的信息，点击OK，我们就创建一个用户了。按照上面的过程，分别添加用户Developer1、tester1、manager1，好了，我们开始添加这些用户到我们刚才创建的项目里：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479579z6D1.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击上图中的"Add..."按钮，在下图中选择我们刚才添加的用户,点击OK按钮：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：大家可能注意到了下图中的Groups，是的，你也可以先创建组，把用户添加到各个组中，然后对组进行授权，操作比较简单，在此略过。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479579113s.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;按照下图所示，分别对用户【或组】进行授权：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795804vfZ.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击"确定"按钮，上面的用户就具有了访问StartKit代码库的不同权限。因为用户starter在团队中是新来者，不希望他向代码库中提交新代码，所以他只能读取代码库中的代码，不能提交代码。tester1是测试人员，不负责代码编写，所以也是只读权限。而Developer1和manager1是开发人员和项目经理，自然具有读、写的权限。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在实际的项目开发过程中，Developer和tester往往不可能只有一个人，这时候使用组来授权更加方便，这个大家可以自己练习一下。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="line-height: 31px; "&gt;3&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="line-height: 31px; "&gt;TotoiseSVN&lt;/span&gt;&lt;/span&gt;&lt;span style="line-height: 31px; font-family: 宋体; "&gt;的基本使用方法&lt;/span&gt;&lt;span style="line-height: 31px; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp; 在 项目管理实践教程一、工欲善其事，必先利其器【Basic Tools】中，我已经讲解了怎样安装TortoiseSVN。在上面的讲解中已经讲了怎么使用VisualSVN Server了，今天我要讲的是，TortoiseSVN的简单使用方法。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.1&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;签入源代码到&lt;span&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;假如我们使用Visual Studio在文件夹StartKit中创建了一个项目，我们要把这个项目的源代码签入到SVN Server上的代码库中里，首先右键点击StartKit文件夹，这时候的右键菜单如下图所示：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-1&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479580DU1e.jpg" alt="" width="507" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击Import，弹出下面的窗体，其中http://zt.net.henu.edu.cn/ 是服务器名，svn是代码仓库的根目录，StartKit是我们在上个教程中添加的一个代码库：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：左下角的CheckBox，在第一次签入源代码时没有用，但是，在以后你提交代码的时候是非常有用的。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-2&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_129247958058oo.jpg" alt="" width="470" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击OK按钮，会弹出下面的窗体，要求输入凭据：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：如果是import到主分支，请按目录管理来导入，此处最好是导入到&lt;a href="http://zt_net.henu.edu.cn/svn/StartKit/trunk" style="color: #336699; text-decoration: none; "&gt;http://zt_net.henu.edu.cn/svn/StartKit/trunk&lt;/a&gt;这样，你导入的代码就在trunk目录下，否则就在StartKit目录下，你会发现源码和tag,branch，trunk目录在同一级目录，这是一种很混乱的使用。同理，当你import到分支的时候目录就用&lt;a href="http://zt_net.henu.edu.cn/svn/StartKit/branches/branch_name.%E2%80%9Cbranch_name" style="color: #336699; text-decoration: none; "&gt;http://zt_net.henu.edu.cn/svn/StartKit/branches/branch_name.&amp;#8220;branch_name&lt;/a&gt;&amp;#8221;是已创建的branch的名字。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-3&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479582wzLr.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在上面的窗体中输入用户名和密码，点击OK按钮：&amp;nbsp;&lt;span style="color: #666666; "&gt;Svn中文网&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-4&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479583Bdui.jpg" alt="" width="558" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;如上图所示，好了，源代码已经成功签入SVN服务器了。这时候团队成员就可以迁出SVN服务器上的源代码到自己的机器了。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.2&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;二、签出源代码到本机&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在本机创建文件夹StartKit，右键点击Checkout，弹出如下图的窗体：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795837g7J.jpg" alt="" width="460" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在上图中URL of Repository：下的文本框中输入svn server中的代码库的地址，其他默认，点击OK按钮,就开始签出源代码了。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：上图中的Checkout Depth，有4个选项，分别是迁出全部、只签出下一级子目录和文件、只签出文件、只签出空项目，默认的是第一项。上面的例子中，我们也可以使用web的方式访问代码库，在浏览器中输入http://zt.net.henu.edu.cn/svn/StartKit/&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;补充：如果刚刚导入到的URL是：&lt;a href="http://zt.net.henu.edu.cn/svn/StartKit/trunk" style="color: #336699; text-decoration: none; "&gt;http://zt.net.henu.edu.cn/svn/StartKit/trunk&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;那么此时，Checkout也应该用这个目录，才能得到主分支的代码。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;这时候也会弹出对话框，要求输入用户名和密码，通过验证后即可浏览代码库中的内容。&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;搞定！源代码已经成功签出到刚才新建的StartKit目录中。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;打开StartKit目录，可以看到如下图的文件夹结构：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479585s23S.jpg" alt="" width="477" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;一旦你对文件或文件夹做了任何修改，那么文件或文件夹的显示图片机会发生变化。下图中我修改了其中的二个文件：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-7&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479586dZ4S.jpg" alt="" width="523" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;大家看一下不同状态所对应的图片：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-8&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479586PPl7.jpg" alt="" width="558" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;我们已经知道怎么将源代码签入到SVN服务器，怎么从服务器签出代码到本机，也简单了解了不同状态所对应的图案啦。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.3&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;提交修改过的文件到&lt;span&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;上面的图2-2-7中，我修改了位于Model文件中的二个文件ImageInfo.cs和NewsInfo.cs，下面演示如何提交到SVN服务器。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;注意：提交源代码到服务器时，一定确保本机的代码是最新版本，否则可能提交失败，或者造成版本冲突。&amp;nbsp;Svn中文网&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在Model文件夹上点击右键或在Model文件下的空白处点击右键，点击SVN Commit&amp;#8230;弹出下面的窗体：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-9&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479587CsGs.jpg" alt="" width="475" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击OK按钮后，弹出如下图的窗体：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-10&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795883ecb.jpg" alt="" width="558" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.4&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;四、添加新文件到&lt;span&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;我们在Model文件下添加一个新的类文件UserInfo.cs，在Model文件下的空白处点击右键，点击SVN Commit&amp;#8230;，和上面讲的提交修改过的文件到SVN服务器一样，就可以了。参考资料:www.svn8.com&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;另外也可以在文件UserInfo.cs上点击右键，点击TortoiseSVN=&amp;gt;&amp;gt;Add，弹出如下图的窗体：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图2-2-11&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479591R4KF.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;选中UserInfo.cs文件，点击OK按钮，这样并没有将这个文件提交到SVN服务器，只是将这个文件标记为源代码库库中的文件，并将其状态置为修改状态。之后，我们要再SVN Commit这个文件一次，才可以将其真正提交到SVN服务器上的代码库中。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;上面讲是添加文件，实际上，添加文件夹的步骤也是一样的，这里就不说了。&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.5&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;更新本机代码与&lt;span&gt;SVN服务器上最新的版本一致&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;这个也很简单，只要在需要更新的文件夹上点击右键或在该文件下的空白处点击右键，点击SVN Update，就可以了。 参考资料:www.svn8.com&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;注意：更新操作可能会因为版本冲突而失败，这是可以使用合并【Merge】或其他方法解决；也可能因为锁定【Get Lock】而失败，这是需要先解锁【Release Lock】。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.6&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;重命名文件或文件夹，并将修改提交到&lt;span&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;只要在需要重命名的文件或文件夹上点击右键，点击TortiseSVN=&amp;gt;&amp;gt;Rename&amp;#8230;，在弹出的窗体中输入新名称，点击OK按 钮，就可以了。此方法也不是直接重命名，而是将该文件或文件夹的名称标记为重命名后名称，也需要我们使用SVN Commit提交到SVN服务器后才真正重命名。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.7&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;删除文件或文件夹，并将修改提交到&lt;span&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;最简单就是，你直接删除文件或文件夹，然后使用SVN Commit提交更新到SVN服务器。另外一种方法是在你要删除的文件或文件夹上点击右键=&amp;gt;&amp;gt;TortoiseSVN=&amp;gt;&amp;gt; Delete删除,此方法也不是直接删除，而是将该文件或文件夹的状态置为删除，也需要我们使用SVN Commit提交到SVN服务器后才真正删除。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：实际上，从你把源代码迁签入SVN服务器开始，每一个版本的数据和文件，就算是你已经删除了的，也都可以随时迁出。 Svn中文网&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;以上只是TortoiseSVN最简单的几个功能，其实他的功能远不止这些，其他的功能大家可以在使用的过程中慢慢体会，有些功能我会在下面的教程中使用到，到时候会和大家讲清楚用法。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;注意：向SVN服务器提交源代码的时候，一定不要提交bin、obj等文件夹，否则会很麻烦。但是web项目的bin目录除外，但是web项目的bin目录中的引用其他项目而生成的dll不需要提交。 Svn8.Com&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;一个好习惯：如果项目中引用了其他的第三方的程序集，比如EnterpriseLibrary、FCKEditor等，这时候不要简单从他们的安装 位置引用，而是在你的解决方案下，添加一个Library的目录，把需要的程序集复制到这里，然后从Library目录引用，这样有什么好处，自己想一想吧！&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="line-height: 31px; "&gt;4&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="line-height: 31px; font-family: 宋体; "&gt;补充&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;4.1&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;&amp;nbsp;Recommended Repository Layout&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;strong&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="font-size: small; "&gt;The&amp;nbsp;&lt;strong&gt;trunk&lt;/strong&gt;&amp;nbsp;folder contains the main development branch, the&amp;nbsp;&lt;strong&gt;branches&lt;/strong&gt;&amp;nbsp;folder contains subfolders with temporary copies of&amp;nbsp;&lt;strong&gt;trunk&lt;/strong&gt;for experimental development, release stabilization etc. and the&amp;nbsp;&lt;strong&gt;tags&lt;/strong&gt;&amp;nbsp;folder contains copies of the officially released versions.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;a href="http://www.cppblog.com/fwxjj/archive/2010/04/15/112671.html" style="color: #336699; text-decoration: none; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 宋体; "&gt;使用&lt;span style="font-family: 'Times New Roman'; "&gt;svn&amp;#8212;&amp;#8212;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;项目的目录布局&lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;转&lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: 9pt; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Subversion有一个很标准的目录结构，是这样的。&lt;br /&gt;比如项目是proj，svn地址为svn://proj/，那么标准的svn布局是&lt;br /&gt;svn://proj/&lt;br /&gt;|&lt;br /&gt;+-trunk&lt;br /&gt;+-branches&lt;br /&gt;+-tags&lt;br /&gt;这是一个标准的布局，trunk为主开发目录，branches为分支开发目录，tags为tag存档目录（不允许修改）。但是具体这几个目录应该如何使用，svn并没有明确的规范，更多的还是用户自己的习惯。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: 9pt; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;对于这几个开发目录，一般的使用方法有两种。我更多的是从软件产品的角度出发（比如&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;freebsd），因为互联网的开发模式是完全不一样的。&lt;br /&gt;第一种方法，使用trunk作为主要的开发目录。&lt;br /&gt;一 般的，我们的所有的开发都是基于trunk进行开发，当一个版本/release开发告一段落（开发、测试、文档、制作安装程序、打包等）结束后，代码处 于冻结状态（人为规定，可以通过hook来进行管理）。此时应该基于当前冻结的代码库，打tag。当下一个版本/阶段的开发任务开始，继续在trunk进行开发。&lt;br /&gt;此时，如果发现了上一个已发行版本（Released Version）有一些bug，或者一些很急迫的功能要求，而正在开发的版本（Developing Version）无法满足时间要求，这时候就需要在上一个版本上进行修改了。应该基于发行版对应的tag，做相应的分支（branch）进行开发。&lt;br /&gt;例如，刚刚发布1.0，正在开发2.0，此时要在1.0的基础上进行bug修正。&lt;br /&gt;按照时间的顺序&lt;br /&gt;1.0开发完毕，代码冻结&amp;nbsp;&lt;br /&gt;基于已经冻结的trunk，为release1.0打tag&lt;br /&gt;此时的目录结构为&lt;br /&gt;svn://proj/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +trunk/&amp;nbsp; (freeze)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +branches/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +tags/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +tag_release_1.0　(copy from trunk)&lt;br /&gt;2.0开始开发，trunk此时为2.0的开发版&amp;nbsp;&lt;br /&gt;发现1.0有bug，需要修改，基于1.0的tag做branch&lt;br /&gt;此时的目录结构为&lt;br /&gt;svn://proj/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +trunk/&amp;nbsp; ( dev 2.0 )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +branches/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +dev_1.0_bugfix (copy from tag/release_1.0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +tags/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +release_1.0　(copy from trunk)&lt;br /&gt;在1.0 bugfix branch进行1.0 bugfix开发，在trunk进行2.0开发&amp;nbsp;&lt;br /&gt;在1.0 bugfix 完成之后，基于dev_1.0_bugfix的branch做release等&amp;nbsp;&lt;br /&gt;根据需要选择性的把dev_1.0_bugfix这个分支merge回trunk（什么时候进行这步操作，要根据具体情况）&lt;br /&gt;这是一种很标准的开发模式，很多的公司都是采用这种模式进行开发的。trunk永远是开发的主要目录。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; font-size: 14px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;4.2&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;Revision Graph Node&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: black; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Added or copied items&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 36pt; text-align: left; "&gt;&lt;span style="color: black; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Items which have been added, or created by copying another file/folder are shown using&amp;nbsp;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: yellow; background-position: initial initial; background-repeat: initial initial; "&gt;a rounded rectangle&lt;/span&gt;. The default colour is green. Tags and trunks are treated as a special case and use a different shade, depending on the TortoiseSVN &amp;#8594; Settings&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: black; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Branch tip revision&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 36pt; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="color: black; font-family: 宋体; "&gt;The&amp;nbsp;&lt;/span&gt;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #316ac5; color: white; font-family: 宋体; background-position: initial initial; background-repeat: initial initial; "&gt;graph&lt;/span&gt;&lt;span style="color: black; font-family: 宋体; "&gt;&amp;nbsp;is normally restricted to showing branch points, but it is often useful to be able to see the respective HEAD revision for each branch too. If you select Show HEAD revisions, each HEAD revision nodes will be shown as an&amp;nbsp;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: yellow; background-position: initial initial; background-repeat: initial initial; "&gt;ellipse&lt;/span&gt;. Note that HEAD here refers to the last revision committed on that path, not to the HEAD revision of the repository.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="left" style="color: #333333; font-family: Arial; font-size: 14px; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: black; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Working copy revision&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/span&gt;&lt;span  style="color: #333333; font-family: Arial; font-weight: bold; line-height: 26px; font-size: small; background-color: #ffffff; "&gt;&lt;span style="color: black; font-family: 宋体; "&gt;If you invoked the revision&amp;nbsp;&lt;/span&gt;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #316ac5; color: white; font-family: 宋体; background-position: initial initial; background-repeat: initial initial; "&gt;graph&lt;/span&gt;&lt;span style="color: black; font-family: 宋体; "&gt;&amp;nbsp;from a working copy, you can opt to show the BASE revision on the&amp;nbsp;&lt;/span&gt;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #316ac5; color: white; font-family: 宋体; background-position: initial initial; background-repeat: initial initial; "&gt;graph&lt;/span&gt;&lt;span style="color: black; font-family: 宋体; "&gt;&amp;nbsp;using Show WC revision, which marks the BASE node with&amp;nbsp;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: yellow; background-position: initial initial; background-repeat: initial initial; "&gt;a bold outline&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span  style="line-height: 26px; background-color: #ffffff; "&gt;&lt;h1 style="margin-top: 17pt; margin-right: 0cm; margin-bottom: 16.5pt; margin-left: 21.6pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span lang="EN-US"&gt;&lt;font  color="#333333" face="'Times New Roman'" size="2"&gt;1&lt;/font&gt;&lt;span style="color: #333333; font-size: small; line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="color: #333333; font-family: 'Times New Roman'; font-size: small; "&gt;Visual SVN Server&lt;/span&gt;&lt;span style="color: #333333; font-size: small; font-family: 宋体; "&gt;的使用&lt;/span&gt;&lt;span lang="EN-US" style="color: #333333; font-family: Arial; "&gt;&lt;br /&gt;&lt;span style="font-size: x-large; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;修改者：Nancy&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;编者按：本文是&lt;span lang="EN-US"&gt;SVN中文网看到的文章，之后做了一些补充与修改，希望可以给大家提供更详细的信息。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: 12pt; font-family: 宋体; "&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-size: small; "&gt;如果转载请注明出处。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: 12pt; font-family: 宋体; "&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN-US" style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;1.为什么要用VisualSVN Server，而不用Subversion？&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;回答：&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;因为如果直接使用&lt;span lang="EN-US"&gt;Subversion，那么在Windows 系统上，要想让它随系统启动，就要封装SVN Server为windws service，还要通过修改配置文件来控制用户权限，另外如果要想以Web方式【http协议】访问，一般还要安装配置Apache，如果是新手，岂不是很头痛？而VisualSVN Serve集成了Subversion和Apache，省去了以上所有的麻烦。安装的时候SVN Server已经封装为windws service，Apache服务器的配置也只是在图像界面上，指定认证方式、访问端口等简单操作；另外，用户权限的管理也是通过图像界面来配置。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN-US" style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;2.VisualSVN Server是免费的吗？&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;回答&lt;span lang="EN-US"&gt;:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;是的，&lt;span lang="EN-US"&gt;VisualSVN Server是免费的，而VisualSVN是收费的。VisualSVN是SVN的客户端，和Visual Studio集成在一起， VisualSvn Server是SVN的服务器端，包括Subversion、Apache和用户及权限管理，优点在上面已经说过了。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;好了，言归正传，正式开始我们今天的教程。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1 style="color: #333333; font-family: Arial; margin-top: 17pt; margin-right: 0cm; margin-bottom: 16.5pt; margin-left: 21.6pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span lang="EN-US" style="line-height: 31px; "&gt;&lt;span&gt;2&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="line-height: 31px; "&gt;VisualSVN Server&lt;/span&gt;&lt;/span&gt;&lt;span style="line-height: 31px; font-family: 宋体; "&gt;的配置和使用方法【服务器端】&lt;/span&gt;&lt;span lang="EN-US" style="line-height: 31px; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;安装好&lt;span lang="EN-US"&gt;VisualSVN Server后【安装过程看这里】，运行VisualSVN Server Manger，下面是启动界面：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: 12pt; font-family: 宋体; "&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292477378hyAi.jpg" alt="" width="683" height="388" style="border-width: initial; border-color: initial; " /&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;好的，下面我来添加一个代码库【&lt;span lang="EN-US"&gt;Repository】，如下图：&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795734SoD.jpg" alt="" width="683" height="384" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;按上图所示，创建新的代码库，在下图所示的文本框中输入代码库名称：&lt;span lang="EN-US"&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479574OcGL.jpg" alt="" width="683" height="384" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="IT" style="font-size: 12pt; font-family: 宋体; "&gt;&lt;span&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;注意：上图中的&lt;span lang="EN-US"&gt;CheckBox如果选中，则在代码库StartKit下面会创建trunk、branches、tags三个子目录；不选中，则只创建空的代码库StartKit。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击&lt;span lang="EN-US"&gt;OK按钮，代码库就创建成功了。&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479574VfiQ.jpg" alt="" width="683" height="384" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;创建完代码库后，没有任何内容在里面。我会在这个教程的第二部分说明如何迁入源代码。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;补充：此处涉及到&lt;span lang="EN-US"&gt;SVN目录的使用策略，可以参考&lt;span style="text-decoration: underline; "&gt;8.1&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;Recommended Repository Layout&lt;/span&gt;.如果有多个Project,此处可以先不选择&amp;#8220;Create default structure&amp;#8221;，假如当前已经创建了Repository StartKit,那么右击Repository StartKit,可以在这个仓库中创建多个Project,每个Project将会有自己的trunk,tag, branch目录.如下图所示。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479574hZaM.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN-US" style="font-size: 12pt; font-family: 宋体; "&gt;&lt;span&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;下面，我们开始安全性设置，在左侧的&lt;span lang="EN-US"&gt;Users上点击右键：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795752w3k.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN-US" style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795759tJQ.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;输入上面的信息，点击&lt;span lang="EN-US"&gt;OK，我们就创建一个用户了。按照上面的过程，分别添加用户Developer1、tester1、manager1，好了，我们开始添加这些用户到我们刚才创建的项目里：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479579z6D1.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击上图中的&lt;span lang="EN-US"&gt;"Add..."按钮，在下图中选择我们刚才添加的用户,点击OK按钮：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：大家可能注意到了下图中的&lt;span lang="EN-US"&gt;Groups，是的，你也可以先创建组，把用户添加到各个组中，然后对组进行授权，操作比较简单，在此略过。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479579113s.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;按照下图所示，分别对用户【或组】进行授权：&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795804vfZ.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击&lt;span lang="EN-US"&gt;"确定"按钮，上面的用户就具有了访问StartKit代码库的不同权限。因为用户starter在团队中是新来者，不希望他向代码库中提交新代码，所以他只能读取代码库中的代码，不能提交代码。tester1是测试人员，不负责代码编写，所以也是只读权限。而Developer1和manager1是开发人员和项目经理，自然具有读、写的权限。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在实际的项目开发过程中，&lt;span lang="EN-US"&gt;Developer和tester往往不可能只有一个人，这时候使用组来授权更加方便，这个大家可以自己练习一下。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1 style="color: #333333; font-family: Arial; margin-top: 17pt; margin-right: 0cm; margin-bottom: 16.5pt; margin-left: 21.6pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span lang="EN-US" style="line-height: 31px; "&gt;&lt;span&gt;3&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="line-height: 31px; "&gt;TotoiseSVN&lt;/span&gt;&lt;/span&gt;&lt;span style="line-height: 31px; font-family: 宋体; "&gt;的基本使用方法&lt;/span&gt;&lt;span lang="EN-US" style="line-height: 31px; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN-US" style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp; 在 项目管理实践教程一、工欲善其事，必先利其器【Basic Tools】中，我已经讲解了怎样安装TortoiseSVN。在上面的讲解中已经讲了怎么使用VisualSVN Server了，今天我要讲的是，TortoiseSVN的简单使用方法。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.1&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;签入源代码到&lt;span lang="EN-US"&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;假如我们使用&lt;span lang="EN-US"&gt;Visual Studio在文件夹StartKit中创建了一个项目，我们要把这个项目的源代码签入到SVN Server上的代码库中里，首先右键点击StartKit文件夹，这时候的右键菜单如下图所示：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479580DU1e.jpg" alt="" width="507" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击&lt;span lang="EN-US"&gt;Import，弹出下面的窗体，其中http://zt.net.henu.edu.cn/ 是服务器名，svn是代码仓库的根目录，StartKit是我们在上个教程中添加的一个代码库：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：左下角的&lt;span lang="EN-US"&gt;CheckBox，在第一次签入源代码时没有用，但是，在以后你提交代码的时候是非常有用的。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-2&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_129247958058oo.jpg" alt="" width="470" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击&lt;span lang="EN-US"&gt;OK按钮，会弹出下面的窗体，要求输入凭据：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：如果是&lt;span lang="EN-US"&gt;import到主分支，请按目录管理来导入，此处最好是导入到&lt;a href="http://zt_net.henu.edu.cn/svn/StartKit/trunk" style="color: #336699; text-decoration: none; "&gt;http://zt_net.henu.edu.cn/svn/StartKit/trunk&lt;/a&gt;这样，你导入的代码就在trunk目录下，否则就在StartKit目录下，你会发现源码和tag,branch，trunk目录在同一级目录，这是一种很混乱的使用。同理，当你import到分支的时候目录就用&lt;a href="http://zt_net.henu.edu.cn/svn/StartKit/branches/branch_name.%E2%80%9Cbranch_name" style="color: #336699; text-decoration: none; "&gt;http://zt_net.henu.edu.cn/svn/StartKit/branches/branch_name.&amp;#8220;branch_name&lt;/a&gt;&amp;#8221;是已创建的branch的名字。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-3&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479582wzLr.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在上面的窗体中输入用户名和密码，点击&lt;span lang="EN-US"&gt;OK按钮：&amp;nbsp;&lt;span style="color: #666666; "&gt;Svn中文网&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-4&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479583Bdui.jpg" alt="" width="558" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;如上图所示，好了，源代码已经成功签入&lt;span lang="EN-US"&gt;SVN服务器了。这时候团队成员就可以迁出SVN服务器上的源代码到自己的机器了。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.2&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;二、签出源代码到本机&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在本机创建文件夹&lt;span lang="EN-US"&gt;StartKit，右键点击Checkout，弹出如下图的窗体：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-5&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795837g7J.jpg" alt="" width="460" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在上图中&lt;span lang="EN-US"&gt;URL of Repository：下的文本框中输入svn server中的代码库的地址，其他默认，点击OK按钮,就开始签出源代码了。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：上图中的&lt;span lang="EN-US"&gt;Checkout Depth，有4个选项，分别是迁出全部、只签出下一级子目录和文件、只签出文件、只签出空项目，默认的是第一项。上面的例子中，我们也可以使用web的方式访问代码库，在浏览器中输入http://zt.net.henu.edu.cn/svn/StartKit/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;补充：如果刚刚导入到的&lt;span lang="EN-US"&gt;URL是：&lt;a href="http://zt.net.henu.edu.cn/svn/StartKit/trunk" style="color: #336699; text-decoration: none; "&gt;http://zt.net.henu.edu.cn/svn/StartKit/trunk&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="color: blue; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;那么此时，&lt;span lang="EN-US"&gt;Checkout也应该用这个目录，才能得到主分支的代码。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;这时候也会弹出对话框，要求输入用户名和密码，通过验证后即可浏览代码库中的内容。&lt;span lang="EN-US"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;搞定！源代码已经成功签出到刚才新建的&lt;span lang="EN-US"&gt;StartKit目录中。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;打开&lt;span lang="EN-US"&gt;StartKit目录，可以看到如下图的文件夹结构：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-5&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479585s23S.jpg" alt="" width="477" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;一旦你对文件或文件夹做了任何修改，那么文件或文件夹的显示图片机会发生变化。下图中我修改了其中的二个文件：&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-7&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479586dZ4S.jpg" alt="" width="523" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;大家看一下不同状态所对应的图片：&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-8&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479586PPl7.jpg" alt="" width="558" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;我们已经知道怎么将源代码签入到&lt;span lang="EN-US"&gt;SVN服务器，怎么从服务器签出代码到本机，也简单了解了不同状态所对应的图案啦。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.3&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;提交修改过的文件到&lt;span lang="EN-US"&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;上面的图&lt;span lang="EN-US"&gt;2-2-7中，我修改了位于Model文件中的二个文件ImageInfo.cs和NewsInfo.cs，下面演示如何提交到SVN服务器。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;注意：提交源代码到服务器时，一定确保本机的代码是最新版本，否则可能提交失败，或者造成版本冲突。&lt;span lang="EN-US"&gt;&amp;nbsp;Svn中文网&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;在&lt;span lang="EN-US"&gt;Model文件夹上点击右键或在Model文件下的空白处点击右键，点击SVN Commit&amp;#8230;弹出下面的窗体：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-9&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479587CsGs.jpg" alt="" width="475" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;点击&lt;span lang="EN-US"&gt;OK按钮后，弹出如下图的窗体：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-10&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_12924795883ecb.jpg" alt="" width="558" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.4&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;四、添加新文件到&lt;span lang="EN-US"&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;我们在&lt;span lang="EN-US"&gt;Model文件下添加一个新的类文件UserInfo.cs，在Model文件下的空白处点击右键，点击SVN Commit&amp;#8230;，和上面讲的提交修改过的文件到SVN服务器一样，就可以了。参考资料:www.svn8.com&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;另外也可以在文件&lt;span lang="EN-US"&gt;UserInfo.cs上点击右键，点击TortoiseSVN=&amp;gt;&amp;gt;Add，弹出如下图的窗体：&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;图&lt;span lang="EN-US"&gt;2-2-11&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;img src="http://hi.csdn.net/attachment/201012/16/302189_1292479591R4KF.jpg" alt="" width="454" height="493" style="border-width: initial; border-color: initial; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;选中&lt;span lang="EN-US"&gt;UserInfo.cs文件，点击OK按钮，这样并没有将这个文件提交到SVN服务器，只是将这个文件标记为源代码库库中的文件，并将其状态置为修改状态。之后，我们要再SVN Commit这个文件一次，才可以将其真正提交到SVN服务器上的代码库中。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;上面讲是添加文件，实际上，添加文件夹的步骤也是一样的，这里就不说了。&lt;span lang="EN-US"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.5&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;更新本机代码与&lt;span lang="EN-US"&gt;SVN服务器上最新的版本一致&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;这个也很简单，只要在需要更新的文件夹上点击右键或在该文件下的空白处点击右键，点击&lt;span lang="EN-US"&gt;SVN Update，就可以了。 参考资料:www.svn8.com&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;注意：更新操作可能会因为版本冲突而失败，这是可以使用合并【&lt;span lang="EN-US"&gt;Merge】或其他方法解决；也可能因为锁定【Get Lock】而失败，这是需要先解锁【Release Lock】。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.6&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;重命名文件或文件夹，并将修改提交到&lt;span lang="EN-US"&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;只要在需要重命名的文件或文件夹上点击右键，点击&lt;span lang="EN-US"&gt;TortiseSVN=&amp;gt;&amp;gt;Rename&amp;#8230;，在弹出的窗体中输入新名称，点击OK按 钮，就可以了。此方法也不是直接重命名，而是将该文件或文件夹的名称标记为重命名后名称，也需要我们使用SVN Commit提交到SVN服务器后才真正重命名。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;3.7&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;删除文件或文件夹，并将修改提交到&lt;span lang="EN-US"&gt;SVN服务器&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;最简单就是，你直接删除文件或文件夹，然后使用&lt;span lang="EN-US"&gt;SVN Commit提交更新到SVN服务器。另外一种方法是在你要删除的文件或文件夹上点击右键=&amp;gt;&amp;gt;TortoiseSVN=&amp;gt;&amp;gt; Delete删除,此方法也不是直接删除，而是将该文件或文件夹的状态置为删除，也需要我们使用SVN Commit提交到SVN服务器后才真正删除。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;说明：实际上，从你把源代码迁签入&lt;span lang="EN-US"&gt;SVN服务器开始，每一个版本的数据和文件，就算是你已经删除了的，也都可以随时迁出。 Svn中文网&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;以上只是&lt;span lang="EN-US"&gt;TortoiseSVN最简单的几个功能，其实他的功能远不止这些，其他的功能大家可以在使用的过程中慢慢体会，有些功能我会在下面的教程中使用到，到时候会和大家讲清楚用法。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN-US" style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;注意：向SVN服务器提交源代码的时候，一定不要提交bin、obj等文件夹，否则会很麻烦。但是web项目的bin目录除外，但是web项目的bin目录中的引用其他项目而生成的dll不需要提交。 Svn8.Com&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;一个好习惯：如果项目中引用了其他的第三方的程序集，比如&lt;span lang="EN-US"&gt;EnterpriseLibrary、FCKEditor等，这时候不要简单从他们的安装 位置引用，而是在你的解决方案下，添加一个Library的目录，把需要的程序集复制到这里，然后从Library目录引用，这样有什么好处，自己想一想吧！&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h1 style="color: #333333; font-family: Arial; margin-top: 17pt; margin-right: 0cm; margin-bottom: 16.5pt; margin-left: 21.6pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span lang="EN-US" style="line-height: 31px; "&gt;&lt;span&gt;4&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="line-height: 31px; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="line-height: 31px; font-family: 宋体; "&gt;补充&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;4.1&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;Recommended Repository Layout&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;strong&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="font-size: small; "&gt;The&amp;nbsp;&lt;strong&gt;trunk&lt;/strong&gt;&amp;nbsp;folder contains the main development branch, the&amp;nbsp;&lt;strong&gt;branches&lt;/strong&gt;&amp;nbsp;folder contains subfolders with temporary copies of&amp;nbsp;&lt;strong&gt;trunk&lt;/strong&gt;for experimental development, release stabilization etc. and the&amp;nbsp;&lt;strong&gt;tags&lt;/strong&gt;&amp;nbsp;folder contains copies of the officially released versions.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;span lang="EN-US"&gt;&lt;a href="http://www.cppblog.com/fwxjj/archive/2010/04/15/112671.html" style="color: #336699; text-decoration: none; "&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 宋体; "&gt;使用&lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;svn&amp;#8212;&amp;#8212;&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;项目的目录布局&lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style="font-family: 宋体; "&gt;转&lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: small; "&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="font-size: small; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; "&gt;&lt;span lang="EN-US" style="font-size: 9pt; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Subversion有一个很标准的目录结构，是这样的。&lt;br /&gt;比如项目是proj，svn地址为svn://proj/，那么标准的svn布局是&lt;br /&gt;svn://proj/&lt;br /&gt;|&lt;br /&gt;+-trunk&lt;br /&gt;+-branches&lt;br /&gt;+-tags&lt;br /&gt;这是一个标准的布局，trunk为主开发目录，branches为分支开发目录，tags为tag存档目录（不允许修改）。但是具体这几个目录应该如何使用，svn并没有明确的规范，更多的还是用户自己的习惯。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="color: #333333; font-family: Arial; "&gt;&lt;span style="font-size: 9pt; "&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;对于这几个开发目录，一般的使用方法有两种。我更多的是从软件产品的角度出发（比如&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;freebsd），因为互联网的开发模式是完全不一样的。&lt;br /&gt;第一种方法，使用trunk作为主要的开发目录。&lt;br /&gt;一 般的，我们的所有的开发都是基于trunk进行开发，当一个版本/release开发告一段落（开发、测试、文档、制作安装程序、打包等）结束后，代码处 于冻结状态（人为规定，可以通过hook来进行管理）。此时应该基于当前冻结的代码库，打tag。当下一个版本/阶段的开发任务开始，继续在trunk进行开发。&lt;br /&gt;此时，如果发现了上一个已发行版本（Released Version）有一些bug，或者一些很急迫的功能要求，而正在开发的版本（Developing Version）无法满足时间要求，这时候就需要在上一个版本上进行修改了。应该基于发行版对应的tag，做相应的分支（branch）进行开发。&lt;br /&gt;例如，刚刚发布1.0，正在开发2.0，此时要在1.0的基础上进行bug修正。&lt;br /&gt;按照时间的顺序&lt;br /&gt;1.0开发完毕，代码冻结&amp;nbsp;&lt;br /&gt;基于已经冻结的trunk，为release1.0打tag&lt;br /&gt;此时的目录结构为&lt;br /&gt;svn://proj/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +trunk/&amp;nbsp; (freeze)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +branches/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +tags/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +tag_release_1.0　(copy from trunk)&lt;br /&gt;2.0开始开发，trunk此时为2.0的开发版&amp;nbsp;&lt;br /&gt;发现1.0有bug，需要修改，基于1.0的tag做branch&lt;br /&gt;此时的目录结构为&lt;br /&gt;svn://proj/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +trunk/&amp;nbsp; ( dev 2.0 )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +branches/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +dev_1.0_bugfix (copy from tag/release_1.0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +tags/&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; +release_1.0　(copy from trunk)&lt;br /&gt;在1.0 bugfix branch进行1.0 bugfix开发，在trunk进行2.0开发&amp;nbsp;&lt;br /&gt;在1.0 bugfix 完成之后，基于dev_1.0_bugfix的branch做release等&amp;nbsp;&lt;br /&gt;根据需要选择性的把dev_1.0_bugfix这个分支merge回trunk（什么时候进行这步操作，要根据具体情况）&lt;br /&gt;这是一种很标准的开发模式，很多的公司都是采用这种模式进行开发的。trunk永远是开发的主要目录。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; "&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-family: 'Times New Roman'; "&gt;&lt;span style="font-size: small; "&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="color: #333333; font-family: Arial; margin-top: auto; margin-right: 0cm; margin-bottom: auto; margin-left: 28.8pt; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;&lt;span style="font-family: 宋体; "&gt;4.2&lt;/span&gt;&lt;span style="line-height: normal; font-style: normal; font-family: 'Times New Roman'; font-variant: normal; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;span style="font-family: 宋体; "&gt;Revision Graph Node&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Added or copied items&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 36pt; text-align: left; "&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Items which have been added, or created by copying another file/folder are shown using&amp;nbsp;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: yellow; background-position: initial initial; background-repeat: initial initial; "&gt;a rounded rectangle&lt;/span&gt;. The default colour is green. Tags and trunks are treated as a special case and use a different shade, depending on the TortoiseSVN &amp;#8594; Settings&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Branch tip revision&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 36pt; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;The&amp;nbsp;&lt;/span&gt;&lt;span lang="EN" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #316ac5; color: white; font-family: 宋体; background-position: initial initial; background-repeat: initial initial; "&gt;graph&lt;/span&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;&amp;nbsp;is normally restricted to showing branch points, but it is often useful to be able to see the respective HEAD revision for each branch too. If you select Show HEAD revisions, each HEAD revision nodes will be shown as an&amp;nbsp;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: yellow; background-position: initial initial; background-repeat: initial initial; "&gt;ellipse&lt;/span&gt;. Note that HEAD here refers to the last revision committed on that path, not to the HEAD revision of the repository.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 0cm; text-align: left; "&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;&lt;span style="font-size: small; "&gt;Working copy revision&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p  align="left" style="color: #333333; font-family: Arial; margin-top: 0cm; margin-right: 0cm; margin-bottom: 0pt; margin-left: 36pt; text-align: left; "&gt;&lt;span style="font-size: small; "&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;If you invoked the revision&amp;nbsp;&lt;/span&gt;&lt;span lang="EN" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #316ac5; color: white; font-family: 宋体; background-position: initial initial; background-repeat: initial initial; "&gt;graph&lt;/span&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;&amp;nbsp;from a working copy, you can opt to show the BASE revision on the&amp;nbsp;&lt;/span&gt;&lt;span lang="EN" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #316ac5; color: white; font-family: 宋体; background-position: initial initial; background-repeat: initial initial; "&gt;graph&lt;/span&gt;&lt;span lang="EN" style="color: black; font-family: 宋体; "&gt;&amp;nbsp;using Show WC revision, which marks the BASE node with&amp;nbsp;&lt;span style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: yellow; background-position: initial initial; background-repeat: initial initial; "&gt;a bold outline&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;转自：http://blog.csdn.net/carry1314lele/article/details/6079868&lt;/p&gt;&lt;p&gt;高清网络电视直播：http://www.3tvs.info&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2284805.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2011/12/12/2284805.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2011/11/19/2255353.html</id><title type="text">新浪微博 各语言SDK 源码</title><summary type="text">Java SDK 前天 13:42 上传下载附件 (3.83 KB) 下载Java SDK （包含新版接口及OAuth2.0） PHP SDK 前天 13:42 上传下载附件 (3.83 KB) 下载地址：http://code.google.com/p/libweibo/（包含新版接口及OAuth2.0，由SAE提供维护，SAE平台已集成最新版PHPSDK） Demo使用教程在open.weibo.com创建应用，得到AppKey，设置“授权设置”中的“应用回调页”地址为&amp;quot;http://host/callback.php&amp;quot;，其中host为网站域名。下载Demo,然后解压,</summary><published>2011-11-19T08:35:00Z</published><updated>2011-11-19T08:35:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2011/11/19/2255353.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2011/11/19/2255353.html"/><content type="html">&#xD;
&#xD;
&lt;p&gt;Java SDK&amp;nbsp; 前天 13:42 上传下载附件 (3.83 KB) &lt;br /&gt;下载Java SDK &lt;br /&gt;（包含新版接口及OAuth2.0） &lt;/p&gt;&#xD;
&lt;p&gt;PHP SDK&amp;nbsp; 前天 13:42 上传下载附件 (3.83 KB) &lt;/p&gt;&#xD;
&lt;p&gt;&lt;br /&gt;下载地址：&lt;a href="http://code.google.com/p/libweibo/"&gt;http://code.google.com/p/libweibo/&lt;/a&gt;&lt;/p&gt;&#xD;
&lt;p&gt;（包含新版接口及OAuth2.0，由SAE提供维护，SAE平台已集成最新版PHPSDK） &lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;br /&gt;Demo使用教程&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;在open.weibo.com创建应用，得到AppKey，设置&amp;#8220;授权设置&amp;#8221;中的&amp;#8220;应用回调页&amp;#8221;地址为"&lt;a href="http://host/callback.php"&gt;http://host/callback.php&lt;/a&gt;"，其中host为网站域名。&lt;br /&gt;下载Demo,然后解压,修改config.php中的WB_AKEY为App Key，WB_SKEY为App Secret，WB_CALLBACK_URL为刚才填入的回调页地址。&lt;br /&gt;上传到PHP空间即可&lt;/p&gt;&#xD;
&lt;p&gt;Flash SDK&amp;nbsp; 前天 13:42 上传下载附件 (3.83 KB) &lt;br /&gt;Source(SVN) &lt;a href="http://code.google.com/p/weibosdk/"&gt;http://code.google.com/p/weibosdk/&lt;/a&gt; 代码演示 &lt;a href="http://flashsdk.sinaapp.com/"&gt;http://flashsdk.sinaapp.com/&lt;/a&gt; Javascript SDK(JSSDK)&amp;nbsp; 前天 13:42 上传下载附件 (3.83 KB) &lt;/p&gt;&#xD;
&lt;p&gt;&lt;br /&gt;JS-SDK Javascript SDK基础包&lt;br /&gt;JS-Wigget Javascript SDK widget包，包含了名片及连接微博功能。&lt;/p&gt;&#xD;
&lt;p&gt;nodejs SDK &lt;/p&gt;&#xD;
&lt;p&gt;&lt;br /&gt;node-weibo, 由网友fengmk2提供（&lt;a href="http://weibo.com/imk2"&gt;http://weibo.com/imk2&lt;/a&gt; ）&lt;br /&gt;source:https://github.com/fengmk2/node-weibo&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;node-weibo-oauth, 由网友bang590提供&lt;br /&gt;source:https://github.com/bang590/node-weibo-oauth&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;注：此SDK由第三方提供，新浪微博开放平台无法对此SDK可能出现的问题给予完全的技术支持。&lt;/p&gt;&#xD;
&lt;p&gt;Python SDK&amp;nbsp; 前天 13:42 上传下载附件 (3.83 KB) &lt;br /&gt;下载SDK &lt;br /&gt;C++&amp;nbsp; 前天 13:42 上传下载附件 (3.83 KB) &lt;/p&gt;&#xD;
&lt;p&gt;&lt;br /&gt;&lt;a href="https://sae-client.googlecode.com/svn/trunk"&gt;https://sae-client.googlecode.com/svn/trunk&lt;/a&gt;&lt;/p&gt;&#xD;
&lt;p&gt;C# &lt;/p&gt;&#xD;
&lt;p&gt;&lt;br /&gt;AMicroblogAPI, 由网友Aldrick Wan提供&lt;br /&gt;source:http://amicroblogapi.codeplex.com&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;opensinaapi, 由网友sarlmolapple提供（&lt;a href="http://t.sina.com.cn/1653426785"&gt;http://t.sina.com.cn/1653426785&lt;/a&gt; ）&lt;br /&gt;source:http://code.google.com/p/opensinaapi/&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;注：以上SDK由第三方提供，新浪微博开放平台无法对此SDK可能出现的问题给予完全的技术支持。&lt;/p&gt;&#xD;
&lt;p&gt;Android&amp;nbsp; 前天 13:42 上传下载附件 (3.83 KB) &lt;br /&gt;新增Android SDK，欢迎下载。 下载Android SDK &lt;br /&gt;iOS SDKiOS SDK &lt;br /&gt;SDK下载地址：&lt;a href="http://code.google.com/p/weibo-ios-sdk/"&gt;http://code.google.com/p/weibo-ios-sdk/&lt;/a&gt; &lt;/p&gt;&#xD;
&lt;p&gt;weibo4objc 技术支持联系方式：&lt;a href="&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#116;&amp;#111;&amp;#58;&amp;#102;&amp;#97;&amp;#110;&amp;#110;&amp;#103;&amp;#121;&amp;#117;&amp;#97;&amp;#110;&amp;#64;&amp;#103;&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#46;&amp;#99;&amp;#111;&amp;#109;"&gt;fanngyuan@gmail.com&lt;/a&gt; &lt;br /&gt;SDK下载地址：&lt;a href="http://code.google.com/p/weibo4objc/"&gt;http://code.google.com/p/weibo4objc/&lt;/a&gt; &lt;/p&gt;&#xD;
&lt;p&gt;sinaweiboios 此SDK由热心网友 @宝玉xp 提供，技术支持联系方式：&lt;a href="&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#116;&amp;#111;&amp;#58;&amp;#106;&amp;#117;&amp;#110;&amp;#109;&amp;#105;&amp;#110;&amp;#108;&amp;#105;&amp;#117;&amp;#64;&amp;#103;&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#46;&amp;#99;&amp;#111;&amp;#109;"&gt;junminliu@gmail.com&lt;/a&gt; &lt;br /&gt;SDK下载地址：&lt;a href="http://code.google.com/p/sinaweiboios/"&gt;http://code.google.com/p/sinaweiboios/&lt;/a&gt; &lt;br /&gt;WP7 SDK&amp;nbsp; 前天 13:42 上传下载附件 (3.83 KB) &lt;br /&gt;SDK下载地址：&lt;a href="http://code.google.com/p/weibowp7/downloads/list"&gt;http://code.google.com/p/weibowp7/downloads/list&lt;/a&gt; &lt;br /&gt;Ruby SDK感谢网友Scott提供！ &lt;br /&gt;作者联系方式：&lt;a href="&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#116;&amp;#111;&amp;#58;&amp;#117;&amp;#115;&amp;#115;&amp;#98;&amp;#97;&amp;#108;&amp;#108;&amp;#97;&amp;#110;&amp;#116;&amp;#121;&amp;#110;&amp;#101;&amp;#64;&amp;#103;&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#46;&amp;#99;&amp;#111;&amp;#109;"&gt;ussballantyne@gmail.com&lt;/a&gt; &lt;br /&gt;SDK下载地址：下载地址 &lt;br /&gt;Delphi SDK &lt;/p&gt;&#xD;
&lt;p&gt;&lt;br /&gt;Delphi-weibo, 由网友OrangerBo提供（&lt;a href="http://weibo.com/orangeinmymind"&gt;http://weibo.com/orangeinmymind&lt;/a&gt; ）&lt;br /&gt;source:http://code.google.com/p/sinaweibosdk/&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;a href="http://open.weibo.com/wiki/SDK"&gt;http://open.weibo.com/wiki/SDK&lt;/a&gt;&lt;br /&gt;谢谢转载引用本文! 转载时如有可能请保留以下链接, 作者将表示感谢!&lt;br /&gt;原文地址：&lt;a href="http://www.bmpj.net/thread-2234-1-1.html"&gt;http://www.bmpj.net/thread-2234-1-1.html&lt;/a&gt;&lt;/p&gt; &lt;img src="http://www.cnblogs.com/hyruur/aggbug/2255353.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2011/11/19/2255353.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2011/11/19/2255348.html</id><title type="text">C#的加密方法小结</title><summary type="text">方法一： 02 //须添加对System.Web的引用 03 using System.Web.Security; 04 05 ... 06 07 /// &amp;lt;summary&amp;gt; 08 /// SHA1加密字符串 09 /// &amp;lt;/summary&amp;gt; 10 /// &amp;lt;param name=&amp;quot;source&amp;quot;&amp;gt;源字符串&amp;lt;/param&amp;gt; 11 /// &amp;lt;returns&amp;gt;加密后的字符串&amp;lt;/returns&amp;gt; 12 public string SHA1(string source) 13 { 14 return Form</summary><published>2011-11-19T08:32:00Z</published><updated>2011-11-19T08:32:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2011/11/19/2255348.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2011/11/19/2255348.html"/><content type="html">&#xD;
&#xD;
&#xD;
&lt;p&gt;方法一： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //须添加对System.Web的引用&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Web.Security;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// SHA1加密字符串&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="source"&amp;gt;源字符串&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;加密后的字符串&amp;lt;/returns&amp;gt;&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string SHA1(string source)&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return FormsAuthentication.HashPasswordForStoringInConfigFile(source, "SHA1");&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// MD5加密字符串&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="source"&amp;gt;源字符串&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;加密后的字符串&amp;lt;/returns&amp;gt;&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string MD5(string source)&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return FormsAuthentication.HashPasswordForStoringInConfigFile(source, "MD5");;&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法二(可逆加密解密)： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string Encode(string data)&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64);&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64);&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i = cryptoProvider.KeySize;&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream ms = new MemoryStream();&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cst = new CryptoStream(ms, cryptoProvider.CreateEncryptor(byKey, byIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamWriter sw = new StreamWriter(cst);&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Write(data);&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Flush();&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cst.FlushFinalBlock();&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Flush();&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Convert.ToBase64String(ms.GetBuffer(), 0, (int)ms.Length);&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string Decode(string data)&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64);&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64);&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byEnc;&amp;nbsp; &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byEnc = Convert.FromBase64String(data);&amp;nbsp; &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&amp;nbsp; &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream ms = new MemoryStream(byEnc);&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cst = new CryptoStream(ms, cryptoProvider.CreateDecryptor(byKey, byIV), CryptoStreamMode.Read);&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamReader sr = new StreamReader(cst);&amp;nbsp; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sr.ReadToEnd();&amp;nbsp; &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法二(可逆加密解密)： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string Encode(string data)&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64);&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64);&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i = cryptoProvider.KeySize;&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream ms = new MemoryStream();&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cst = new CryptoStream(ms, cryptoProvider.CreateEncryptor(byKey, byIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamWriter sw = new StreamWriter(cst);&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Write(data);&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Flush();&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cst.FlushFinalBlock();&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sw.Flush();&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Convert.ToBase64String(ms.GetBuffer(), 0, (int)ms.Length);&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string Decode(string data)&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byKey = System.Text.ASCIIEncoding.ASCII.GetBytes(KEY_64);&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byIV = System.Text.ASCIIEncoding.ASCII.GetBytes(IV_64);&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] byEnc;&amp;nbsp; &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byEnc = Convert.FromBase64String(data);&amp;nbsp; &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&amp;nbsp; &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream ms = new MemoryStream(byEnc);&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cst = new CryptoStream(ms, cryptoProvider.CreateDecryptor(byKey, byIV), CryptoStreamMode.Read);&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamReader sr = new StreamReader(cst);&amp;nbsp; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sr.ReadToEnd();&amp;nbsp; &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&#xD;
&lt;p&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法三(MD5不可逆)： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //MD5不可逆加密&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //32位加密&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string GetMD5_32(string s, string _input_charset)&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MD5 md5 = new MD5CryptoServiceProvider();&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] t = md5.ComputeHash(Encoding.GetEncoding(_input_charset).GetBytes(s));&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StringBuilder sb = new StringBuilder(32);&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; t.Length; i++)&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sb.Append(t[i].ToString("x").PadLeft(2, '0'));&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sb.ToString();&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //16位加密&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static string GetMd5_16(string ConvertString)&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)), 4, 8);&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t2 = t2.Replace("-", "");&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return t2;&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法三(MD5不可逆)： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //MD5不可逆加密&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //32位加密&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string GetMD5_32(string s, string _input_charset)&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MD5 md5 = new MD5CryptoServiceProvider();&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] t = md5.ComputeHash(Encoding.GetEncoding(_input_charset).GetBytes(s));&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StringBuilder sb = new StringBuilder(32);&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; t.Length; i++)&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sb.Append(t[i].ToString("x").PadLeft(2, '0'));&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sb.ToString();&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //16位加密&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static string GetMd5_16(string ConvertString)&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)), 4, 8);&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t2 = t2.Replace("-", "");&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return t2;&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&#xD;
&lt;p&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法四(对称加密)： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.IO;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private SymmetricAlgorithm mobjCryptoService;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private string Key;&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 对称加密类的构造函数&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public SymmetricMethod()&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService = new RijndaelManaged();&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Key = "Guz(%&amp;amp;hj7x89H$yuBI0456FtmaT5&amp;amp;fvHUFCy76*h%(HilJ$lhj!y6&amp;amp;(*jkP87jH7";&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 获得密钥&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;密钥&amp;lt;/returns&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private byte[] GetLegalKey()&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string sTemp = Key;&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.GenerateKey();&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytTemp = mobjCryptoService.Key;&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int KeyLength = bytTemp.Length;&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sTemp.Length &amp;gt; KeyLength)&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp = sTemp.Substring(0, KeyLength);&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (sTemp.Length &amp;lt; KeyLength)&amp;nbsp; &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp = sTemp.PadRight(KeyLength, ' ');&amp;nbsp; &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ASCIIEncoding.ASCII.GetBytes(sTemp);&amp;nbsp; &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 获得初始向量IV&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;初试向量IV&amp;lt;/returns&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private byte[] GetLegalIV()&amp;nbsp; &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string sTemp = "E4ghj*Ghg7!rNIfb&amp;amp;95GUY86GfghUb#er57HBh(u%g6HJ($jhWk7&amp;amp;!hg4ui%$hjk";&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.GenerateIV();&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytTemp = mobjCryptoService.IV;&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int IVLength = bytTemp.Length;&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sTemp.Length &amp;gt; IVLength)&amp;nbsp; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp = sTemp.Substring(0, IVLength);&amp;nbsp; &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (sTemp.Length &amp;lt; IVLength)&amp;nbsp; &lt;br /&gt;46&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp = sTemp.PadRight(IVLength, ' ');&amp;nbsp; &lt;br /&gt;47&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ASCIIEncoding.ASCII.GetBytes(sTemp);&amp;nbsp; &lt;br /&gt;48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;49&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 加密方法&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;51&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="Source"&amp;gt;待加密的串&amp;lt;/param&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;53&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;经过加密的串&amp;lt;/returns&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;54&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string Encrypto(string Source)&amp;nbsp; &lt;br /&gt;55&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;56&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytIn = UTF8Encoding.UTF8.GetBytes(Source);&amp;nbsp; &lt;br /&gt;57&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream ms = new MemoryStream();&amp;nbsp; &lt;br /&gt;58&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.Key = GetLegalKey();&amp;nbsp; &lt;br /&gt;59&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.IV = GetLegalIV();&amp;nbsp; &lt;br /&gt;60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ICryptoTransform encrypto = mobjCryptoService.CreateEncryptor();&amp;nbsp; &lt;br /&gt;61&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;62&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cs.Write(bytIn, 0, bytIn.Length);&amp;nbsp; &lt;br /&gt;63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cs.FlushFinalBlock();&amp;nbsp; &lt;br /&gt;64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ms.Close();&amp;nbsp; &lt;br /&gt;65&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytOut = ms.ToArray();&amp;nbsp; &lt;br /&gt;66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Convert.ToBase64String(bytOut);&amp;nbsp; &lt;br /&gt;67&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;68&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;69&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 解密方法&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;70&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;71&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="Source"&amp;gt;待解密的串&amp;lt;/param&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;72&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;经过解密的串&amp;lt;/returns&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;73&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string Decrypto(string Source)&amp;nbsp; &lt;br /&gt;74&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;75&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytIn = Convert.FromBase64String(Source);&amp;nbsp; &lt;br /&gt;76&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream ms = new MemoryStream(bytIn, 0, bytIn.Length);&amp;nbsp; &lt;br /&gt;77&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.Key = GetLegalKey();&amp;nbsp; &lt;br /&gt;78&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.IV = GetLegalIV();&amp;nbsp; &lt;br /&gt;79&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ICryptoTransform encrypto = mobjCryptoService.CreateDecryptor();&amp;nbsp; &lt;br /&gt;80&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Read);&amp;nbsp; &lt;br /&gt;81&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamReader sr = new StreamReader(cs);&amp;nbsp; &lt;br /&gt;82&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sr.ReadToEnd();&amp;nbsp; &lt;br /&gt;83&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法四(对称加密)： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.IO;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private SymmetricAlgorithm mobjCryptoService;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private string Key;&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 对称加密类的构造函数&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public SymmetricMethod()&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService = new RijndaelManaged();&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Key = "Guz(%&amp;amp;hj7x89H$yuBI0456FtmaT5&amp;amp;fvHUFCy76*h%(HilJ$lhj!y6&amp;amp;(*jkP87jH7";&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 获得密钥&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;密钥&amp;lt;/returns&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private byte[] GetLegalKey()&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string sTemp = Key;&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.GenerateKey();&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytTemp = mobjCryptoService.Key;&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int KeyLength = bytTemp.Length;&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sTemp.Length &amp;gt; KeyLength)&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp = sTemp.Substring(0, KeyLength);&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (sTemp.Length &amp;lt; KeyLength)&amp;nbsp; &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp = sTemp.PadRight(KeyLength, ' ');&amp;nbsp; &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ASCIIEncoding.ASCII.GetBytes(sTemp);&amp;nbsp; &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 获得初始向量IV&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;初试向量IV&amp;lt;/returns&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private byte[] GetLegalIV()&amp;nbsp; &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string sTemp = "E4ghj*Ghg7!rNIfb&amp;amp;95GUY86GfghUb#er57HBh(u%g6HJ($jhWk7&amp;amp;!hg4ui%$hjk";&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.GenerateIV();&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytTemp = mobjCryptoService.IV;&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int IVLength = bytTemp.Length;&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sTemp.Length &amp;gt; IVLength)&amp;nbsp; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp = sTemp.Substring(0, IVLength);&amp;nbsp; &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if (sTemp.Length &amp;lt; IVLength)&amp;nbsp; &lt;br /&gt;46&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sTemp = sTemp.PadRight(IVLength, ' ');&amp;nbsp; &lt;br /&gt;47&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ASCIIEncoding.ASCII.GetBytes(sTemp);&amp;nbsp; &lt;br /&gt;48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;49&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 加密方法&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;51&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="Source"&amp;gt;待加密的串&amp;lt;/param&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;53&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;经过加密的串&amp;lt;/returns&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;54&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string Encrypto(string Source)&amp;nbsp; &lt;br /&gt;55&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;56&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytIn = UTF8Encoding.UTF8.GetBytes(Source);&amp;nbsp; &lt;br /&gt;57&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream ms = new MemoryStream();&amp;nbsp; &lt;br /&gt;58&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.Key = GetLegalKey();&amp;nbsp; &lt;br /&gt;59&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.IV = GetLegalIV();&amp;nbsp; &lt;br /&gt;60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ICryptoTransform encrypto = mobjCryptoService.CreateEncryptor();&amp;nbsp; &lt;br /&gt;61&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;62&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cs.Write(bytIn, 0, bytIn.Length);&amp;nbsp; &lt;br /&gt;63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cs.FlushFinalBlock();&amp;nbsp; &lt;br /&gt;64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ms.Close();&amp;nbsp; &lt;br /&gt;65&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytOut = ms.ToArray();&amp;nbsp; &lt;br /&gt;66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Convert.ToBase64String(bytOut);&amp;nbsp; &lt;br /&gt;67&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;68&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;69&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// 解密方法&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;70&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;71&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="Source"&amp;gt;待解密的串&amp;lt;/param&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;72&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;经过解密的串&amp;lt;/returns&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;73&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string Decrypto(string Source)&amp;nbsp; &lt;br /&gt;74&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;75&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytIn = Convert.FromBase64String(Source);&amp;nbsp; &lt;br /&gt;76&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream ms = new MemoryStream(bytIn, 0, bytIn.Length);&amp;nbsp; &lt;br /&gt;77&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.Key = GetLegalKey();&amp;nbsp; &lt;br /&gt;78&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjCryptoService.IV = GetLegalIV();&amp;nbsp; &lt;br /&gt;79&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ICryptoTransform encrypto = mobjCryptoService.CreateDecryptor();&amp;nbsp; &lt;br /&gt;80&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cs = new CryptoStream(ms, encrypto, CryptoStreamMode.Read);&amp;nbsp; &lt;br /&gt;81&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamReader sr = new StreamReader(cs);&amp;nbsp; &lt;br /&gt;82&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return sr.ReadToEnd();&amp;nbsp; &lt;br /&gt;83&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&#xD;
&lt;p&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法五： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.IO;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Text;&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //默认密钥向量&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static byte[] Keys = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// DES加密字符串&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="encryptString"&amp;gt;待加密的字符串&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="encryptKey"&amp;gt;加密密钥,要求为8位&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;加密成功返回加密后的字符串，失败返回源串&amp;lt;/returns&amp;gt;&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static string EncryptDES(string encryptString, string encryptKey)&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] rgbKey = Encoding.UTF8.GetBytes(encryptKey.Substring(0, 8));&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] rgbIV = Keys;&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] inputByteArray = Encoding.UTF8.GetBytes(encryptString);&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider dCSP = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream mStream = new MemoryStream();&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cStream = new CryptoStream(mStream, dCSP.CreateEncryptor(rgbKey, rgbIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.Write(inputByteArray, 0, inputByteArray.Length);&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.FlushFinalBlock();&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Convert.ToBase64String(mStream.ToArray());&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return encryptString;&amp;nbsp; &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp; &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// DES解密字符串&amp;nbsp; &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp; &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="decryptString"&amp;gt;待解密的字符串&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="decryptKey"&amp;gt;解密密钥,要求为8位,和加密密钥相同&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;解密成功返回解密后的字符串，失败返源串&amp;lt;/returns&amp;gt;&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static string DecryptDES(string decryptString, string decryptKey)&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;46&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] rgbKey = Encoding.UTF8.GetBytes(decryptKey);&amp;nbsp; &lt;br /&gt;47&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] rgbIV = Keys;&amp;nbsp; &lt;br /&gt;48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] inputByteArray = Convert.FromBase64String(decryptString);&amp;nbsp; &lt;br /&gt;49&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider DCSP = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream mStream = new MemoryStream();&amp;nbsp; &lt;br /&gt;51&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cStream = new CryptoStream(mStream, DCSP.CreateDecryptor(rgbKey, rgbIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.Write(inputByteArray, 0, inputByteArray.Length);&amp;nbsp; &lt;br /&gt;53&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.FlushFinalBlock();&amp;nbsp; &lt;br /&gt;54&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Encoding.UTF8.GetString(mStream.ToArray());&amp;nbsp; &lt;br /&gt;55&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;56&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch &lt;br /&gt;57&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;58&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return decryptString;&amp;nbsp; &lt;br /&gt;59&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法五： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.IO;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Text;&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //默认密钥向量&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static byte[] Keys = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF };&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// DES加密字符串&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="encryptString"&amp;gt;待加密的字符串&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="encryptKey"&amp;gt;加密密钥,要求为8位&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;加密成功返回加密后的字符串，失败返回源串&amp;lt;/returns&amp;gt;&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static string EncryptDES(string encryptString, string encryptKey)&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] rgbKey = Encoding.UTF8.GetBytes(encryptKey.Substring(0, 8));&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] rgbIV = Keys;&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] inputByteArray = Encoding.UTF8.GetBytes(encryptString);&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider dCSP = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream mStream = new MemoryStream();&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cStream = new CryptoStream(mStream, dCSP.CreateEncryptor(rgbKey, rgbIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.Write(inputByteArray, 0, inputByteArray.Length);&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.FlushFinalBlock();&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Convert.ToBase64String(mStream.ToArray());&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return encryptString;&amp;nbsp; &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt;&amp;nbsp; &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// DES解密字符串&amp;nbsp; &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&amp;nbsp; &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="decryptString"&amp;gt;待解密的字符串&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="decryptKey"&amp;gt;解密密钥,要求为8位,和加密密钥相同&amp;lt;/param&amp;gt;&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;解密成功返回解密后的字符串，失败返源串&amp;lt;/returns&amp;gt;&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static string DecryptDES(string decryptString, string decryptKey)&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;46&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] rgbKey = Encoding.UTF8.GetBytes(decryptKey);&amp;nbsp; &lt;br /&gt;47&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] rgbIV = Keys;&amp;nbsp; &lt;br /&gt;48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] inputByteArray = Convert.FromBase64String(decryptString);&amp;nbsp; &lt;br /&gt;49&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider DCSP = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream mStream = new MemoryStream();&amp;nbsp; &lt;br /&gt;51&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cStream = new CryptoStream(mStream, DCSP.CreateDecryptor(rgbKey, rgbIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.Write(inputByteArray, 0, inputByteArray.Length);&amp;nbsp; &lt;br /&gt;53&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.FlushFinalBlock();&amp;nbsp; &lt;br /&gt;54&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Encoding.UTF8.GetString(mStream.ToArray());&amp;nbsp; &lt;br /&gt;55&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;56&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch &lt;br /&gt;57&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;58&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return decryptString;&amp;nbsp; &lt;br /&gt;59&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&#xD;
&lt;p&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法六(文件加密)： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.IO;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Text;&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //加密文件&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static void EncryptData(String inName, String outName, byte[] desKey, byte[] desIV)&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Create the file streams to handle the input and output files.&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fin = new FileStream(inName, FileMode.Open, FileAccess.Read);&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fout = new FileStream(outName, FileMode.OpenOrCreate, FileAccess.Write);&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fout.SetLength(0);&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Create variables to help with read and write.&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bin = new byte[100]; //This is intermediate storage for the encryption.&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; long rdlen = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the total number of bytes written.&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; long totlen = fin.Length;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the total length of the input file.&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int len;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the number of bytes to be written at a time.&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DES des = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream encStream = new CryptoStream(fout, des.CreateEncryptor(desKey, desIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Read from the input file, then encrypt and write to the output file.&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (rdlen &amp;lt; totlen)&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; len = fin.Read(bin, 0, 100);&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encStream.Write(bin, 0, len);&amp;nbsp; &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rdlen = rdlen + len;&amp;nbsp; &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encStream.Close();&amp;nbsp; &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fout.Close();&amp;nbsp; &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fin.Close();&amp;nbsp; &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //解密文件&amp;nbsp; &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static void DecryptData(String inName, String outName, byte[] desKey, byte[] desIV)&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Create the file streams to handle the input and output files.&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fin = new FileStream(inName, FileMode.Open, FileAccess.Read);&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fout = new FileStream(outName, FileMode.OpenOrCreate, FileAccess.Write);&amp;nbsp; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fout.SetLength(0);&amp;nbsp; &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;46&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Create variables to help with read and write.&amp;nbsp; &lt;br /&gt;47&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bin = new byte[100]; //This is intermediate storage for the encryption.&amp;nbsp; &lt;br /&gt;48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; long rdlen = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the total number of bytes written.&amp;nbsp; &lt;br /&gt;49&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; long totlen = fin.Length;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the total length of the input file.&amp;nbsp; &lt;br /&gt;50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int len;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the number of bytes to be written at a time.&amp;nbsp; &lt;br /&gt;51&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DES des = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;53&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream encStream = new CryptoStream(fout, des.CreateDecryptor(desKey, desIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;54&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;55&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Read from the input file, then encrypt and write to the output file.&amp;nbsp; &lt;br /&gt;56&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (rdlen &amp;lt; totlen)&amp;nbsp; &lt;br /&gt;57&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;58&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; len = fin.Read(bin, 0, 100);&amp;nbsp; &lt;br /&gt;59&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encStream.Write(bin, 0, len);&amp;nbsp; &lt;br /&gt;60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rdlen = rdlen + len;&amp;nbsp; &lt;br /&gt;61&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;62&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encStream.Close();&amp;nbsp; &lt;br /&gt;64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fout.Close();&amp;nbsp; &lt;br /&gt;65&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fin.Close();&amp;nbsp; &lt;br /&gt;66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;67&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法六(文件加密)： &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.IO;&amp;nbsp; &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;&amp;nbsp; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Text;&amp;nbsp; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&amp;nbsp; &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //加密文件&amp;nbsp; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static void EncryptData(String inName, String outName, byte[] desKey, byte[] desIV)&amp;nbsp; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Create the file streams to handle the input and output files.&amp;nbsp; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fin = new FileStream(inName, FileMode.Open, FileAccess.Read);&amp;nbsp; &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fout = new FileStream(outName, FileMode.OpenOrCreate, FileAccess.Write);&amp;nbsp; &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fout.SetLength(0);&amp;nbsp; &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Create variables to help with read and write.&amp;nbsp; &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bin = new byte[100]; //This is intermediate storage for the encryption.&amp;nbsp; &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; long rdlen = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the total number of bytes written.&amp;nbsp; &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; long totlen = fin.Length;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the total length of the input file.&amp;nbsp; &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int len;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the number of bytes to be written at a time.&amp;nbsp; &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DES des = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream encStream = new CryptoStream(fout, des.CreateEncryptor(desKey, desIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Read from the input file, then encrypt and write to the output file.&amp;nbsp; &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (rdlen &amp;lt; totlen)&amp;nbsp; &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; len = fin.Read(bin, 0, 100);&amp;nbsp; &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encStream.Write(bin, 0, len);&amp;nbsp; &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rdlen = rdlen + len;&amp;nbsp; &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encStream.Close();&amp;nbsp; &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fout.Close();&amp;nbsp; &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fin.Close();&amp;nbsp; &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //解密文件&amp;nbsp; &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static void DecryptData(String inName, String outName, byte[] desKey, byte[] desIV)&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Create the file streams to handle the input and output files.&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fin = new FileStream(inName, FileMode.Open, FileAccess.Read);&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fout = new FileStream(outName, FileMode.OpenOrCreate, FileAccess.Write);&amp;nbsp; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fout.SetLength(0);&amp;nbsp; &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;46&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Create variables to help with read and write.&amp;nbsp; &lt;br /&gt;47&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bin = new byte[100]; //This is intermediate storage for the encryption.&amp;nbsp; &lt;br /&gt;48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; long rdlen = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the total number of bytes written.&amp;nbsp; &lt;br /&gt;49&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; long totlen = fin.Length;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the total length of the input file.&amp;nbsp; &lt;br /&gt;50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int len;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //This is the number of bytes to be written at a time.&amp;nbsp; &lt;br /&gt;51&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DES des = new DESCryptoServiceProvider();&amp;nbsp; &lt;br /&gt;53&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream encStream = new CryptoStream(fout, des.CreateDecryptor(desKey, desIV), CryptoStreamMode.Write);&amp;nbsp; &lt;br /&gt;54&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;55&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Read from the input file, then encrypt and write to the output file.&amp;nbsp; &lt;br /&gt;56&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (rdlen &amp;lt; totlen)&amp;nbsp; &lt;br /&gt;57&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp; &lt;br /&gt;58&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; len = fin.Read(bin, 0, 100);&amp;nbsp; &lt;br /&gt;59&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encStream.Write(bin, 0, len);&amp;nbsp; &lt;br /&gt;60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rdlen = rdlen + len;&amp;nbsp; &lt;br /&gt;61&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &lt;br /&gt;62&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encStream.Close();&amp;nbsp; &lt;br /&gt;64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fout.Close();&amp;nbsp; &lt;br /&gt;65&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fin.Close();&amp;nbsp; &lt;br /&gt;66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;67&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;view source&lt;br /&gt;print&lt;br /&gt;?01&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System; &lt;br /&gt;02&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Security.Cryptography;//这个是处理文字编码的前提 &lt;br /&gt;03&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.Text; &lt;br /&gt;04&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using System.IO; &lt;br /&gt;05&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt; &lt;br /&gt;06&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// DES加密方法 &lt;br /&gt;07&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt; &lt;br /&gt;08&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="strPlain"&amp;gt;明文&amp;lt;/param&amp;gt; &lt;br /&gt;09&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="strDESKey"&amp;gt;密钥&amp;lt;/param&amp;gt; &lt;br /&gt;10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="strDESIV"&amp;gt;向量&amp;lt;/param&amp;gt; &lt;br /&gt;11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;密文&amp;lt;/returns&amp;gt; &lt;br /&gt;12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string DESEncrypt(string strPlain,string strDESKey,string strDESIV) &lt;br /&gt;13&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;br /&gt;14&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把密钥转换成字节数组 &lt;br /&gt;15&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytesDESKey=ASCIIEncoding.ASCII.GetBytes(strDESKey); &lt;br /&gt;16&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把向量转换成字节数组 &lt;br /&gt;17&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytesDESIV=ASCIIEncoding.ASCII.GetBytes(strDESIV); &lt;br /&gt;18&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //声明1个新的DES对象 &lt;br /&gt;19&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider desEncrypt=new DESCryptoServiceProvider(); &lt;br /&gt;20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //开辟一块内存流 &lt;br /&gt;21&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream msEncrypt=new MemoryStream(); &lt;br /&gt;22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把内存流对象包装成加密流对象 &lt;br /&gt;23&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream csEncrypt=new CryptoStream(msEncrypt,desEncrypt.CreateEncryptor(bytesDESKey,bytesDESIV),CryptoStreamMode.Write); &lt;br /&gt;24&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把加密流对象包装成写入流对象 &lt;br /&gt;25&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamWriter swEncrypt=new StreamWriter(csEncrypt); &lt;br /&gt;26&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //写入流对象写入明文 &lt;br /&gt;27&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; swEncrypt.WriteLine(strPlain); &lt;br /&gt;28&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //写入流关闭 &lt;br /&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; swEncrypt.Close(); &lt;br /&gt;30&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //加密流关闭 &lt;br /&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; csEncrypt.Close(); &lt;br /&gt;32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把内存流转换成字节数组，内存流现在已经是密文了 &lt;br /&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytesCipher=msEncrypt.ToArray(); &lt;br /&gt;34&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //内存流关闭 &lt;br /&gt;35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; msEncrypt.Close(); &lt;br /&gt;36&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把密文字节数组转换为字符串，并返回 &lt;br /&gt;37&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UnicodeEncoding.Unicode.GetString(bytesCipher); &lt;br /&gt;38&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;br /&gt;39&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;42&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;43&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;summary&amp;gt; &lt;br /&gt;44&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// DES解密方法 &lt;br /&gt;45&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt; &lt;br /&gt;46&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="strCipher"&amp;gt;密文&amp;lt;/param&amp;gt; &lt;br /&gt;47&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="strDESKey"&amp;gt;密钥&amp;lt;/param&amp;gt; &lt;br /&gt;48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;param name="strDESIV"&amp;gt;向量&amp;lt;/param&amp;gt; &lt;br /&gt;49&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;returns&amp;gt;明文&amp;lt;/returns&amp;gt; &lt;br /&gt;50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string DESDecrypt(string strCipher,string strDESKey,string strDESIV) &lt;br /&gt;51&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;br /&gt;52&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把密钥转换成字节数组 &lt;br /&gt;53&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytesDESKey=ASCIIEncoding.ASCII.GetBytes(strDESKey); &lt;br /&gt;54&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把向量转换成字节数组 &lt;br /&gt;55&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytesDESIV=ASCIIEncoding.ASCII.GetBytes(strDESIV); &lt;br /&gt;56&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把密文转换成字节数组 &lt;br /&gt;57&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bytesCipher=UnicodeEncoding.Unicode.GetBytes(strCipher); &lt;br /&gt;58&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //声明1个新的DES对象 &lt;br /&gt;59&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DESCryptoServiceProvider desDecrypt=new DESCryptoServiceProvider(); &lt;br /&gt;60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //开辟一块内存流，并存放密文字节数组 &lt;br /&gt;61&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MemoryStream msDecrypt=new MemoryStream(bytesCipher); &lt;br /&gt;62&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把内存流对象包装成解密流对象 &lt;br /&gt;63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream csDecrypt=new CryptoStream(msDecrypt,desDecrypt.CreateDecryptor(bytesDESKey,bytesDESIV),CryptoStreamMode.Read); &lt;br /&gt;64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //把解密流对象包装成读出流对象 &lt;br /&gt;65&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamReader srDecrypt=new StreamReader(csDecrypt); &lt;br /&gt;66&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //明文=读出流的读出内容 &lt;br /&gt;67&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string strPlainText=srDecrypt.ReadLine(); &lt;br /&gt;68&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //读出流关闭 &lt;br /&gt;69&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; srDecrypt.Close(); &lt;br /&gt;70&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //解密流关闭 &lt;br /&gt;71&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; csDecrypt.Close(); &lt;br /&gt;72&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //内存流关闭 &lt;br /&gt;73&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; msDecrypt.Close(); &lt;br /&gt;74&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //返回明文 &lt;br /&gt;75&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return strPlainText; &lt;br /&gt;76&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2255348.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2011/11/19/2255348.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2011/11/17/2252760.html</id><title type="text">c#（WinForm）遍历局域网计算机（电脑）获取IP和计算机名称</title><summary type="text">using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net; using System.Net.NetworkInformation; using System.IO; using System.Collections; using System.Diagn</summary><published>2011-11-17T07:46:00Z</published><updated>2011-11-17T07:46:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2011/11/17/2252760.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2011/11/17/2252760.html"/><content type="html">&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Collections.Generic; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.ComponentModel; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Data; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Drawing; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Linq; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Text; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Windows.Forms; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Net; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Net.NetworkInformation; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.IO; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Collections; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Diagnostics; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.DirectoryServices; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;System.Management; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;namespace&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;SocketTransferFile &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;/summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;public&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;partial&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;class&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;Form1 : Form &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//局域网计算机列表 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;List&amp;lt;LocalMachine&amp;gt; machineList = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;List&amp;lt;LocalMachine&amp;gt;(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//Form构造函数 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;public&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;Form1() &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;InitializeComponent(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;InitData(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// 初始化数据 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;/summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;private&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;void&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;InitData() &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;lvLocalMachine.Items.Clear(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;machineList.Clear(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//获取当前域的计算机列表 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;label4.Text = DateTime.Now.ToString(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;GetAllLocalMachines(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;foreach&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(LocalMachine machine &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;in&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;machineList) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;ListViewItem item = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;ListViewItem(&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;string&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;[] { machine.Name, machine.IP }); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;lvLocalMachine.Items.Add(item); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;label5.Text = DateTime.Now.ToString(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//获取Active Directory中的计算机节点 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//label4.Text = DateTime.Now.ToString(); &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//EnumComputers(); &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//label5.Text = DateTime.Now.ToString(); &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//获取指定IP范围内的计算机 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//label4.Text = DateTime.Now.ToString(); &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//EnumComputersByPing(); &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//label5.Text = DateTime.Now.ToString(); &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// Handles the Click event of the button1 control. &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;/summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;param name="sender"&amp;gt;The source of the event.&amp;lt;/param&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;param name="e"&amp;gt;The &amp;lt;see cref="System.EventArgs"/&amp;gt; instance containing the event data.&amp;lt;/param&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;private&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;void&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;button1_Click(&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;object&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;sender, EventArgs e) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;InitData(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// 获取指定IP范围内的计算机 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;/summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;private&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;void&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;EnumComputersByPing() &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;try&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;for&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;int&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;i = 1; i &amp;lt;= 254; i++) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;Ping myPing; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;myPing = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;Ping(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;myPing.PingCompleted += &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;PingCompletedEventHandler(_myPing_PingCompleted); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;string&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;pingIP = &lt;/code&gt;&lt;code &gt;&lt;font color="#0000ff"&gt;"192.168.1."&lt;/font&gt;&lt;/code&gt; &lt;code &gt;+ i.ToString(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;myPing.SendAsync(pingIP, 1000, &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;null&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;catch&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// Handles the PingCompleted event of the _myPing control. &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;/summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;param name="sender"&amp;gt;The source of the event.&amp;lt;/param&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;param name="e"&amp;gt;The &amp;lt;see cref="System.Net.NetworkInformation.PingCompletedEventArgs"/&amp;gt; instance containing the event data.&amp;lt;/param&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;private&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;void&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;_myPing_PingCompleted(&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;object&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;sender, PingCompletedEventArgs e) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;if&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(e.Reply.Status == IPStatus.Success) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;LocalMachine localMachine = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;LocalMachine(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;localMachine.IP = e.Reply.Address.ToString(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//localMachine.Name = Dns.GetHostByAddress(IPAddress.Parse(e.Reply.Address.ToString())).HostName; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;localMachine.Name = Dns.Resolve(e.Reply.Address.ToString()).HostName; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;ListViewItem item = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;ListViewItem(&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;string&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;[] { localMachine.Name, localMachine.IP }); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;lvLocalMachine.Items.Add(item); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// 获取Active Directory中的计算机节点 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;/summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;private&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;void&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;EnumComputers() &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;using&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(DirectoryEntry root = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;DirectoryEntry(&lt;/code&gt;&lt;code &gt;&lt;font color="#0000ff"&gt;"WinNT:"&lt;/font&gt;&lt;/code&gt;&lt;code &gt;)) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;foreach&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(DirectoryEntry domain &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;in&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;root.Children) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;foreach&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(DirectoryEntry computer &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;in&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;domain.Children) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;if&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(computer.Name == &lt;/code&gt;&lt;code &gt;&lt;font color="#0000ff"&gt;"Schema"&lt;/font&gt;&lt;/code&gt;&lt;code &gt;) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;continue&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;try&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;LocalMachine localMachine = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;LocalMachine(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;localMachine.IP = Dns.GetHostEntry(computer.Name).AddressList[0].ToString(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;localMachine.Name = computer.Name; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;ListViewItem item = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;ListViewItem(&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;string&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;[] { localMachine.Name, localMachine.IP }); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;lvLocalMachine.Items.Add(item); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;catch&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// 获取当前域的计算机列表 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;/summary&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#808080"&gt;/// &amp;lt;returns&amp;gt;&amp;lt;/returns&amp;gt; &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;private&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;void&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;GetAllLocalMachines() &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;Process p = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;Process(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.StartInfo.FileName = &lt;/code&gt;&lt;code &gt;&lt;font color="#0000ff"&gt;"net"&lt;/font&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.StartInfo.Arguments = &lt;/code&gt;&lt;code &gt;&lt;font color="#0000ff"&gt;"view"&lt;/font&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.StartInfo.UseShellExecute = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;false&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.StartInfo.RedirectStandardInput = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;true&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.StartInfo.RedirectStandardOutput = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;true&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.StartInfo.RedirectStandardError = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;true&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.StartInfo.CreateNoWindow = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;true&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.Start(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;p.StandardInput.WriteLine(&lt;/code&gt;&lt;code &gt;&lt;font color="#0000ff"&gt;"exit"&lt;/font&gt;&lt;/code&gt;&lt;code &gt;); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;StreamReader reader = p.StandardOutput; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;for&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;string&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;line = reader.ReadLine(); line != &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;null&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; line = reader.ReadLine()) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;line = line.Trim(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;if&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;(line.StartsWith(&lt;/code&gt;&lt;code &gt;&lt;font color="#0000ff"&gt;@"\\"&lt;/font&gt;&lt;/code&gt;&lt;code &gt;)) &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;string&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;name = line.Substring(2).Trim(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;font color="#008200"&gt;//如果有路由器，会列出路由器，但是获取不到IP地址，会报错 &lt;/font&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;try&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;LocalMachine localMachine = &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;new&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;LocalMachine(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;localMachine.IP = Dns.GetHostEntry(name).AddressList[0].ToString(); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;localMachine.Name = name; &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;machineList.Add(localMachine); &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;catch&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;public&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;class&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;LocalMachine &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;{ &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;public&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;string&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;IP { &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;get&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;set&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; } &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;public&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;string&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt; &lt;code &gt;Name { &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;get&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; &lt;/code&gt;&lt;code &gt;&lt;strong&gt;&lt;font color="#006699"&gt;set&lt;/font&gt;&lt;/strong&gt;&lt;/code&gt;&lt;code &gt;; } &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;} &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;table&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;td &gt;&lt;code &gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2252760.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2011/11/17/2252760.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/hyruur/archive/2011/11/02/2233603.html</id><title type="text">局域网内计算机自动校时</title><summary type="text">在计算机中心机房中，常常会有很多计算机工作站和服务器，随着时间的推移，这么多计算机的系统时间与北京标准时间相比往往会出现差异，有的计算机系统时间会变快，有的计算机系统时间会变慢，如果靠人工定期进行校准，不仅工作量大，而且不可能及时对每一台计算机的系统时间进行及时的校准，如果采用计算机自动校时，则可以解决这个问题，具体方法如下： 1、选一台计算机（为叙述方便，设为计算机A，该计算机走时要相对准确，在需要校时时必须是处于开机状态），定期调准时间，作为时间标准； 2、在通过局域网与计算机A相连的其他计算机B上，建一个批处理程序time_ds.bat(该文件要放在windows操作系统的安装目录...</summary><published>2011-11-02T13:08:00Z</published><updated>2011-11-02T13:08:00Z</updated><author><name>hyruur</name><uri>http://www.cnblogs.com/hyruur/</uri></author><link rel="alternate" href="http://www.cnblogs.com/hyruur/archive/2011/11/02/2233603.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/hyruur/archive/2011/11/02/2233603.html"/><content type="html">在计算机中心机房中，常常会有很多计算机工作站和服务器，随着时间的推移，这么多计算机的系统时间与北京标准时间相比往往会出现差异，有的计算机系统时间会变快，有的计算机系统时间会变慢，如果靠人工定期进行校准，不仅工作量大，而且不可能及时对每一台计算机的系统时间进行及时的校准，如果采用计算机自动校时，则可以解决这个问题，具体方法如下： &#xD;
&lt;p&gt;1、选一台计算机（为叙述方便，设为计算机A，该计算机走时要相对准确，在需要校时时必须是处于开机状态），定期调准时间，作为时间标准；&lt;/p&gt;&#xD;
&lt;p&gt;2、在通过局域网与计算机A相连的其他计算机B上，建一个批处理程序time_ds.bat(该文件要放在windows操作系统的安装目录下)，内容为：&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font color="#ff0000"&gt;net　time　&lt;/font&gt;&lt;font color="#ff0000"&gt;\\servername&lt;/font&gt;&lt;font color="#ff0000"&gt;　/set　/yes&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color="#0000ff"&gt;例：net time \\192.168.1.13 set /yes （两个命令间均有空格）&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;其中，servername为计算机A的计算机名；&lt;/p&gt;&#xD;
&lt;p&gt;3、将time_ds.bat文件保存到windows目录中，并对该程序属性设置为&amp;#8220;最小化&amp;#8221;和&amp;#8220;退出时关闭&amp;#8221;，这样在相同目录下，就会生成time_ds.pif文件，将该文件加入到启动组中。这样可以保证计算机B在开机时自动与计算机A校时）。&lt;/p&gt;&#xD;
&lt;p&gt;4、通过在计划任务程序中，将该批处理程序增加到计划任务中，就可以实现计算机定时自动校时。&lt;/p&gt;&#xD;
&lt;p&gt;用命令　net　time　\\servrname　/set　/yes　不仅能够对时间进行同步，而且也包括对日期（年、月、日）进行同步。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font color="#ff0000"&gt;来自另一篇同类的文章：&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;在局域网的管理中时间同步是比较重要的，可以很方便的避开某一时间，同时备份时也不会有时间不对的困扰。&lt;br /&gt;&lt;br /&gt;　　可以通过net time这个命令来同步局域网内的时间。&lt;/p&gt;&#xD;
&lt;p&gt;大致的应用方法在下面。&amp;#8220;&amp;lt;服务器名&amp;gt;&amp;#8221;这个部分换成实际使用的服务器名即可(也可使用IP地址)。此命令可放在Autoexec.bat中或计划任务中执行即可。&lt;/p&gt;&#xD;
&lt;p&gt;net time \\&amp;lt;服务器名&amp;gt; /set /yes&lt;/p&gt;&#xD;
&lt;p&gt;当运行完成后，即可生效。&lt;br /&gt;&lt;br /&gt;　　大家可在4月25日就将校时服务器首先改为4月27日，即可将局域网中的计算机时间全部修改，避免逐一修改的麻烦。&lt;br /&gt;&lt;br /&gt;　　以上只是应用之一，可灵活应用，相信可以节约不少时间和精力。&lt;/p&gt;&#xD;
&lt;p&gt;此命令的使用帮助：&lt;br /&gt;&lt;br /&gt;　　Net Time&lt;br /&gt;&lt;br /&gt;　　使计算机的时钟与另一台计算机或域的时间同步。不带 /set 参数使用时，将显示另一台计算机或域的时间。&lt;br /&gt;&lt;br /&gt;　　NET TIME [\\computer | /WORKGROUP:wgname] [/SET] [/YES]&lt;br /&gt;&lt;br /&gt;　　&lt;strong&gt;参数&lt;br /&gt;&lt;/strong&gt;　　computer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 要检查或同步的服务器名。&lt;br /&gt;　　/WORKGROUP&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定要与其时间同步的其它工作组。&lt;br /&gt;　　wgname&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定要与其时间同步的其它工作组中的服务器名。&lt;br /&gt;　　/SET&amp;amp;n指定要与其时间同步的其它工作组中的服务器名。&lt;br /&gt;　　/SET&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 使本计算机时钟与指定计算机或域的时钟同步。&lt;br /&gt;　　/YES&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 自动完成命令忽略提示信息。&lt;/p&gt;&#xD;
&lt;p&gt;&lt;font color="#339966"&gt;第三篇，应该将NET TIME这个命令运用得很完美了：&lt;/font&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;span style="font-size: 12px" &gt;&lt;font face="Verdana"&gt;net time&lt;br /&gt;使计算机的时钟与另一个计算机或域的时钟同步。如果在没有 /set 选项的情况下使用，则显示另一个计算机或域的时间。&lt;br /&gt;&lt;br /&gt;net time [\\computername | /domain[:domainname] | /rtsdomain[:domainname]] [/set] &lt;br /&gt;&lt;br /&gt;net time [\\computername] [/querysntp] | [/setsntp[:ntp server list]]&lt;br /&gt;&lt;br /&gt;参数 &lt;br /&gt;&lt;br /&gt;无&lt;br /&gt;&lt;br /&gt;显示被指派为本地计算机的 Windows 服务器域的时间服务器的计算机的当前时间。&lt;br /&gt;&lt;br /&gt;\\computername&lt;br /&gt;&lt;br /&gt;指定要检查或与之同步的服务器的名称。 &lt;br /&gt;&lt;br /&gt;/domain[:domainname]&lt;br /&gt;&lt;br /&gt;指定要同步时间的域。&lt;br /&gt;&lt;br /&gt;/rtsdomain[:domainname]&lt;br /&gt;&lt;br /&gt;指定要与之同步的可信时间服务器所在的域。&lt;br /&gt;&lt;br /&gt;/set&lt;br /&gt;&lt;br /&gt;使计算机的时钟与指定的计算机或域的时间同步。&lt;br /&gt;&lt;br /&gt;/querysntp&lt;br /&gt;&lt;br /&gt;显示当前为本地计算机或 \\computername 所指定的计算机配置的网络时间协议 (NTP) 服务器的名称。&lt;br /&gt;&lt;br /&gt;/setsntp[:ntp server list]&lt;br /&gt;&lt;br /&gt;指定本地计算机所使用的 NTP 时间服务器的列表。该列表可以包含 IP 地址 或 DNS 名称，用空格分开。如果要使用多个时间服务器，该列表必须用引号引起来。&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/hyruur/aggbug/2233603.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/hyruur/archive/2011/11/02/2233603.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
