<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_改变自己</title><subtitle type="text">             我可以改变世界 改变自己</subtitle><id>http://feed.cnblogs.com/blog/u/45412/rss</id><updated>2011-11-20T14:33:24Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/45412/rss"/><entry><id>http://www.cnblogs.com/dashan9zj/archive/2010/08/19/1803812.html</id><title type="text">Windows 无法初始化这个硬件的设备驱动程序。 (代码 37)</title><summary type="text">故障描述：重启电脑后，USB键盘无法使用，不过USB鼠标可以，在设备管理器中可以看到键盘设备上面有个黄色感叹号。 双击此设备，在设备状态中为此描述: Windows 无法初始化这个硬件的设备驱动程序。 (代码 37) 解决办法：参考 在开始菜单中运行regedit 1.定位到HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class ...</summary><published>2010-08-19T10:28:00Z</published><updated>2010-08-19T10:28:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2010/08/19/1803812.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2010/08/19/1803812.html"/><content type="html">&lt;p&gt;故障描述：重启电脑后，USB键盘无法使用，不过USB鼠标可以，在设备管理器中可以看到键盘设备上面有个黄色感叹号。&lt;/p&gt; &lt;p&gt;双击此设备，在设备状态中为此描述: &lt;font color="#ff0000"&gt;Windows 无法初始化这个硬件的设备驱动程序。 (代码 37)&lt;/font&gt;&lt;/p&gt; &lt;p&gt;解决办法：&lt;a href="http://ask.lenovo.com.cn/index.php/detail/177632/page/1/"&gt;参考&lt;/a&gt;&lt;/p&gt; &lt;p&gt;在开始菜单中运行regedit&amp;nbsp; &lt;br&gt;1.定位到HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class \\{4D36E96B-E325-11CE-BFC1-08002BE10318}&lt;br&gt;2.删除UpperFilters项&lt;br&gt;3.然后回到设备管理器卸载键盘设备，重新启动。&lt;br&gt;4.再次定位到HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class \\{4D36E96B-E325-11CE-BFC1-08002BE10318}&lt;br&gt;6.新建添加字符串UpperFilters项，内容填写kbdclass&lt;br&gt;7.再次卸载键盘设备，重新启动&lt;br&gt;如果还不行 请插入您的系统光碟 以管理员权限运行开始菜单中的CMD命令 然后通过输入法的软件盘 输入"sfc /scannow"&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;请严格执行上面的步骤，本人在执行到步骤3后(此时可以查看到设备管理器中的感叹号已消失)，仍然无法使用,感觉此方法希望不大，不过还是按照其方法继续执行。当到步骤7 后，测试成功.&lt;/p&gt;&lt;img src="http://www.cnblogs.com/dashan9zj/aggbug/1803812.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/dashan9zj/archive/2010/08/19/1803812.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2010/08/19/1803449.html</id><title type="text">防止用户在文本框中拷贝粘贴文本</title><summary type="text">原文参考 基本原理为通过jQuery的e.preventDefault()方法来进行阻止事件的方法 由于在 ASP.NET中控件的客户端 ID动态生成(在ASP.NET 4中可以通过页面指令来进行指定了)，不过可以通过ClientID 属性来获取</summary><published>2010-08-19T05:39:00Z</published><updated>2010-08-19T05:39:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2010/08/19/1803449.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2010/08/19/1803449.html"/><content type="html">&lt;p&gt;&lt;a href="http://www.4guysfromrolla.com/articles/060910-1.aspx"&gt;原文参考&lt;/a&gt;&lt;/p&gt; &lt;p&gt;基本原理为通过jQuery的e.preventDefault()方法来进行阻止事件的方法&lt;/p&gt; &lt;div&gt;&amp;lt;script &lt;span style="color: #0000ff"&gt;type&lt;/span&gt;="&lt;span style="color: #8b0000"&gt;text/javascript&lt;/span&gt;"&amp;gt;&lt;br/&gt;   $(document).ready(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; () {&lt;br/&gt;      $('input[&lt;span style="color: #0000ff"&gt;type&lt;/span&gt;=text]').bind('copy paste', &lt;span style="color: #0000ff"&gt;function&lt;/span&gt; (e) {&lt;br/&gt;         e.preventDefault();&lt;br/&gt;      });&lt;br/&gt;   });&lt;br/&gt;&amp;lt;/script&amp;gt;  &lt;/div&gt;&lt;br&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;由于在 ASP.NET中控件的客户端 ID动态生成(在ASP.NET 4中可以通过页面指令来进行指定了)，不过可以通过ClientID 属性来获取&lt;/p&gt;&lt;div&gt;&amp;lt;script type="&lt;span style="color: #8b0000"&gt;text/javascript&lt;/span&gt;"&amp;gt;&lt;br/&gt;   $(&lt;span style="color: #0000ff"&gt;document&lt;/span&gt;).ready(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; () {&lt;br/&gt;      $('#&amp;lt;%=txtEmail.ClientID%&amp;gt;').bind('copy', &lt;span style="color: #0000ff"&gt;function&lt;/span&gt; (e) {&lt;br/&gt;         e.preventDefault();&lt;br/&gt;&lt;br/&gt;         $('#message').text("&lt;span style="color: #8b0000"&gt;You cannot copy the text from this textbox...&lt;/span&gt;")&lt;br/&gt;                      .css(&lt;br/&gt;                        {&lt;br/&gt;                           left: 20 + $(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).offset().left + $(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).width() + 'px',&lt;br/&gt;                           &lt;span style="color: #0000ff"&gt;top&lt;/span&gt;: $(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).offset().&lt;span style="color: #0000ff"&gt;top&lt;/span&gt; + 'px'&lt;br/&gt;                        })&lt;br/&gt;                      .fadeIn(3000, &lt;span style="color: #0000ff"&gt;function&lt;/span&gt; () { $(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).fadeOut(1500) });&lt;br/&gt;      });&lt;br/&gt;&lt;br/&gt;   });&lt;br/&gt;&amp;lt;/script&amp;gt; &amp;nbsp;对于bind中的参数，同样可以用paste,表示禁止向文本框中粘贴内容(copy为禁止复制文本框中的内容)&lt;br&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/dashan9zj/aggbug/1803449.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/dashan9zj/archive/2010/08/19/1803449.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2010/07/30/1788608.html</id><title type="text">双网卡路由设定</title><summary type="text">// 首先删除默认的网管设定route delete 0.0.0.0 mask 0.0.0.0// 然后将192开头的IP请求定位到192.168.86.254这个网管，优先顺序最高route add 192.0.0.0 mask 255.0.0.0 192.168.86.254 metric 1// 最后将其他的IP请求都定位到192.168.109.254这个网关route add 0.0.0...</summary><published>2010-07-30T03:56:00Z</published><updated>2010-07-30T03:56:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2010/07/30/1788608.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2010/07/30/1788608.html"/><content type="html">&lt;p&gt;//&amp;nbsp; 首先删除默认的网管设定&lt;/p&gt;&lt;p&gt;route delete 0.0.0.0 mask 0.0.0.0&lt;/p&gt;&lt;p&gt;//&amp;nbsp;&amp;nbsp; 然后将192开头的IP请求定位到192.168.86.254这个网管，优先顺序最高&lt;br /&gt;route add 192.0.0.0 mask 255.0.0.0 192.168.86.254 metric 1&lt;/p&gt;&lt;p&gt;//&amp;nbsp; 最后将其他的IP请求都定位到192.168.109.254这个网关&lt;/p&gt;&lt;p&gt;route add 0.0.0.0 mask 0.0.0.0 192.168.109.254&lt;/p&gt;&lt;img src="http://www.cnblogs.com/dashan9zj/aggbug/1788608.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/dashan9zj/archive/2010/07/30/1788608.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2010/06/09/1754894.html</id><title type="text">Delphi Socket Demo</title><summary type="text">转自 http://www.anqn.com/dev/delphi/2010-01-07/a09122531-1.shtml 自己对中间有点修改，下面是代码 服务端部分 [代码][代码]客户端部分[代码][代码]Demo下载</summary><published>2010-06-09T08:42:00Z</published><updated>2010-06-09T08:42:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2010/06/09/1754894.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2010/06/09/1754894.html"/><content type="html">&lt;p&gt;转自&amp;nbsp; &lt;a title="http://www.anqn.com/dev/delphi/2010-01-07/a09122531-1.shtml" href="http://www.anqn.com/dev/delphi/2010-01-07/a09122531-1.shtml"&gt;http://www.anqn.com/dev/delphi/2010-01-07/a09122531-1.shtml&lt;/a&gt;&amp;nbsp;&amp;nbsp; 自己对中间有点修改，下面是代码&lt;/p&gt; &lt;p&gt;&lt;strong&gt;服务端部分&lt;/strong&gt;&lt;/p&gt; &lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;img id="Code_Closed_Image_342207" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_342207').style.display='none'; document.getElementById('Code_Open_Image_342207').style.display='inline'; document.getElementById('Code_Open_Text_342207').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"&gt;&lt;img style="display: none" id="Code_Open_Image_342207" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_342207').style.display='none'; getElementById('Code_Closed_Image_342207').style.display='inline'; getElementById('Code_Closed_Text_342207').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"&gt;&lt;span id="Code_Closed_Text_342207" class="cnblogs_code_Collapse"&gt;PAS&lt;/span&gt;&lt;span style="display: none" id="Code_Open_Text_342207"&gt;&lt;span style="color: #0000ff"&gt;unit&lt;/span&gt; Unit1;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;interface&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;uses&lt;/span&gt;&lt;br/&gt;  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,&lt;br/&gt;  Dialogs,ScktComp, StdCtrls, ComCtrls;&lt;br/&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;const&lt;/span&gt;&lt;br/&gt;    CMax=10;  &lt;span style="color: #008000"&gt;//  客户端最大连接数&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;    &lt;span style="color: #008000"&gt;// 利用此记录类型保存客户端的信息，同时保存当前客户端的连接状态&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;type&lt;/span&gt;&lt;br/&gt;    client_record=&lt;span style="color: #0000ff"&gt;record&lt;/span&gt;&lt;br/&gt;    CHandle:Integer;  &lt;span style="color: #008000"&gt;//客户端套接字句柄&lt;/span&gt;&lt;br/&gt;    CSocket:TCustomWinSocket;  &lt;span style="color: #008000"&gt;//  客户端套接字&lt;/span&gt;&lt;br/&gt;    CName:&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;;   &lt;span style="color: #008000"&gt;// 客户端计算机名称&lt;/span&gt;&lt;br/&gt;    CAddress:&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;;   &lt;span style="color: #008000"&gt;//  客户端计算机IP地址&lt;/span&gt;&lt;br/&gt;    CUsed:Boolean;   &lt;span style="color: #008000"&gt;//客户端联机标志&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;type&lt;/span&gt;&lt;br/&gt;  TForm1 = class(TForm)&lt;br/&gt;    ServerSocket: TServerSocket;&lt;br/&gt;    tbConnect: TButton;&lt;br/&gt;    tbClose: TButton;&lt;br/&gt;    tbDisconnected: TButton;&lt;br/&gt;    Edit1: TEdit;&lt;br/&gt;    Memo1: TMemo;&lt;br/&gt;    StatusBar: TStatusBar;&lt;br/&gt;    Label1: TLabel;&lt;br/&gt;    Label2: TLabel;&lt;br/&gt;    Label3: TLabel;&lt;br/&gt;    Memo2: TMemo;&lt;br/&gt;    lb_count: TLabel;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; tbConnectClick(Sender: TObject);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; tbCloseClick(Sender: TObject);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ServerSocketClientRead(Sender: TObject;&lt;br/&gt;      Socket: TCustomWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ServerSocketListen(Sender: TObject;&lt;br/&gt;      Socket: TCustomWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ServerSocketClientConnect(Sender: TObject;&lt;br/&gt;      Socket: TCustomWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ServerSocketClientDisconnect(Sender: TObject;&lt;br/&gt;      Socket: TCustomWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; tbDisconnectedClick(Sender: TObject);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; FormClose(Sender: TObject; &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; Action: TCloseAction);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ServerSocketGetSocket(Sender: TObject; Socket: Integer;&lt;br/&gt;      &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; ClientSocket: TServerClientWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ServerSocketClientError(Sender: TObject;&lt;br/&gt;      Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;&lt;br/&gt;      &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; ErrorCode: Integer);&lt;br/&gt;  private&lt;br/&gt;    { Private declarations }&lt;br/&gt;  public&lt;br/&gt;    { Public declarations }&lt;br/&gt;&lt;br/&gt;    session:&lt;span style="color: #0000ff"&gt;array&lt;/span&gt;[0..CMax-1] &lt;span style="color: #0000ff"&gt;of&lt;/span&gt; client_record;   &lt;span style="color: #008000"&gt;//  客户端连接数组&lt;/span&gt;&lt;br/&gt;        &lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt;&lt;br/&gt;  Form1: TForm1;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;implementation&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;{$R *.dfm}&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  打开套接字连接，并使套接字进入监听状态&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.tbConnectClick(Sender: TObject);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  ServerSocket.Open;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  关闭套接字连接，不再监听客户端的请求&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.tbCloseClick(Sender: TObject);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  Close;      &lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  从客户端读取信息&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ServerSocketClientRead(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket);&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;var&lt;/span&gt;&lt;br/&gt;    i:Integer;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #008000"&gt;//  将从客户端读取的信息添加到Memo1中&lt;/span&gt;&lt;br/&gt;  Memo1.Lines.Add(Socket.ReceiveText);&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; i:=0 &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; 9 &lt;span style="color: #0000ff"&gt;do&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #008000"&gt;//  取得匹配的客户端&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; session[i].CHandle=Socket.SocketHandle &lt;span style="color: #0000ff"&gt;then&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;      session[i].CSocket.SendText('Send String To Client: '+session[i].CAddress+' ==&amp;gt; '+Edit1.Text);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  服务器端套接字进入监听状态，以便监听客户端的连接&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ServerSocketListen(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  StatusBar.Panels[0].Text:='Waiting &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; Client Connect...';&lt;br/&gt;  &lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  当客户端连接到服务器端以后&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ServerSocketClientConnect(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt;&lt;br/&gt;  i,c:Integer;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  c:=0;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; i:=0 &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; 9 &lt;span style="color: #0000ff"&gt;do&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; &lt;span style="color: #0000ff"&gt;not&lt;/span&gt; session[i].CUsed &lt;span style="color: #0000ff"&gt;then&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;      session[i].CHandle:=Socket.SocketHandle;  &lt;span style="color: #008000"&gt;// 客户端套接字句柄&lt;/span&gt;&lt;br/&gt;      session[i].CSocket:=Socket;  &lt;span style="color: #008000"&gt;// 客户端套接字&lt;/span&gt;&lt;br/&gt;      session[i].CName:=Socket.RemoteHost;  &lt;span style="color: #008000"&gt;//  客户端计算机名称&lt;/span&gt;&lt;br/&gt;      session[i].CAddress:=Socket.RemoteAddress; &lt;span style="color: #008000"&gt;//  客户端计算机IP&lt;/span&gt;&lt;br/&gt;      session[i].CUsed:=True; &lt;span style="color: #008000"&gt;// 连接数组当前位置已经占用&lt;/span&gt;&lt;br/&gt;      Break;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;  StatusBar.Panels[0].Text:='Client'+Socket.RemoteHost+'Connect';&lt;br/&gt;&lt;br/&gt;  Memo2.Lines.Clear;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; i:=0 &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; 9 &lt;span style="color: #0000ff"&gt;do&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; session[i].CUsed &lt;span style="color: #0000ff"&gt;then&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;      Memo2.Lines.Add('Client Name:'+session[i].CName+'Client Address:'+session[i].CAddress);&lt;br/&gt;      c:=c+1;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;  lb_count.Caption:=IntToStr(c);&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  当客户端断开连接时&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ServerSocketClientDisconnect(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt;&lt;br/&gt;    i,c:Integer;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; i:=0 &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; 9 &lt;span style="color: #0000ff"&gt;do&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; session[i].CHandle=Socket.SocketHandle &lt;span style="color: #0000ff"&gt;then&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;      session[i].CHandle:=0;&lt;br/&gt;      session[i].CUsed:=False;&lt;br/&gt;      Break;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;  StatusBar.Panels[0].Text:='Client'+Socket.RemoteHost+'Disconnect';&lt;br/&gt;&lt;br/&gt;  Memo2.Lines.Clear;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;for&lt;/span&gt; i:=0 &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; 9 &lt;span style="color: #0000ff"&gt;do&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; session[i].CUsed &lt;span style="color: #0000ff"&gt;then&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;      Memo2.Lines.Add('Client Name:'+session[i].CName+'Client Address:'+session[i].CAddress);&lt;br/&gt;      c:=c+1;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;  lb_count.Caption:=IntToStr(c);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.tbDisconnectedClick(Sender: TObject);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  ServerSocket.Close;&lt;br/&gt;  StatusBar.Panels[0].Text:='Server Socket is Close';&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.FormClose(Sender: TObject; &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; Action: TCloseAction);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  ServerSocket.Close;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  当客户端正在与服务器端连接时&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ServerSocketGetSocket(Sender: TObject; Socket: Integer;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; ClientSocket: TServerClientWinSocket);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  StatusBar.Panels[0].Text:='Client is Connecting...';&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ServerSocketClientError(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; ErrorCode: Integer);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  StatusBar.Panels[0].Text:='Client'+Socket.RemoteHost+'Connect Error';&lt;br/&gt;  ErrorCode:=0;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;.&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;img id="Code_Closed_Image_106997" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_106997').style.display='none'; document.getElementById('Code_Open_Image_106997').style.display='inline'; document.getElementById('Code_Open_Text_106997').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"&gt;&lt;img style="display: none" id="Code_Open_Image_106997" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_106997').style.display='none'; getElementById('Code_Closed_Image_106997').style.display='inline'; getElementById('Code_Closed_Text_106997').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"&gt;&lt;span id="Code_Closed_Text_106997" class="cnblogs_code_Collapse"&gt;DFM&lt;/span&gt;&lt;span style="display: none" id="Code_Open_Text_106997"&gt;&lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Form1: TForm1&lt;br/&gt;  Left = 420&lt;br/&gt;  Top = 189&lt;br/&gt;  Width = 522&lt;br/&gt;  Height = 353&lt;br/&gt;  Caption = 'Server'&lt;br/&gt;  Color = clBtnFace&lt;br/&gt;  Font.Charset = GB2312_CHARSET&lt;br/&gt;  Font.Color = clWindowText&lt;br/&gt;  Font.Height = -11&lt;br/&gt;  Font.Name = 'MS Sans Serif'&lt;br/&gt;  Font.Style = []&lt;br/&gt;  OldCreateOrder = False&lt;br/&gt;  OnClose = FormClose&lt;br/&gt;  PixelsPerInch = 96&lt;br/&gt;  TextHeight = 13&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Label1: TLabel&lt;br/&gt;    Left = 200&lt;br/&gt;    Top = 24&lt;br/&gt;    Width = 69&lt;br/&gt;    Height = 13&lt;br/&gt;    Caption = 'Send &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; Client:'&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Label2: TLabel&lt;br/&gt;    Left = 200&lt;br/&gt;    Top = 48&lt;br/&gt;    Width = 113&lt;br/&gt;    Height = 13&lt;br/&gt;    Caption = 'Receive from Client :'&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Label3: TLabel&lt;br/&gt;    Left = 184&lt;br/&gt;    Top = 192&lt;br/&gt;    Width = 73&lt;br/&gt;    Height = 13&lt;br/&gt;    Caption = 'Connect Status'&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; lb_count: TLabel&lt;br/&gt;    Left = 296&lt;br/&gt;    Top = 192&lt;br/&gt;    Width = 41&lt;br/&gt;    Height = 13&lt;br/&gt;    Caption = 'lb_count'&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; tbConnect: TButton&lt;br/&gt;    Left = 16&lt;br/&gt;    Top = 16&lt;br/&gt;    Width = 75&lt;br/&gt;    Height = 25&lt;br/&gt;    Caption = 'tbConnect'&lt;br/&gt;    TabOrder = 0&lt;br/&gt;    OnClick = tbConnectClick&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; tbClose: TButton&lt;br/&gt;    Left = 16&lt;br/&gt;    Top = 64&lt;br/&gt;    Width = 75&lt;br/&gt;    Height = 25&lt;br/&gt;    Caption = 'tbClose'&lt;br/&gt;    TabOrder = 1&lt;br/&gt;    OnClick = tbCloseClick&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; tbDisconnected: TButton&lt;br/&gt;    Left = 16&lt;br/&gt;    Top = 112&lt;br/&gt;    Width = 97&lt;br/&gt;    Height = 25&lt;br/&gt;    Caption = 'tbDisconnected'&lt;br/&gt;    TabOrder = 2&lt;br/&gt;    OnClick = tbDisconnectedClick&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Edit1: TEdit&lt;br/&gt;    Left = 280&lt;br/&gt;    Top = 16&lt;br/&gt;    Width = 113&lt;br/&gt;    Height = 21&lt;br/&gt;    TabOrder = 3&lt;br/&gt;    Text = 'OK'&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Memo1: TMemo&lt;br/&gt;    Left = 200&lt;br/&gt;    Top = 72&lt;br/&gt;    Width = 249&lt;br/&gt;    Height = 105&lt;br/&gt;    TabOrder = 4&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; StatusBar: TStatusBar&lt;br/&gt;    Left = 0&lt;br/&gt;    Top = 307&lt;br/&gt;    Width = 514&lt;br/&gt;    Height = 19&lt;br/&gt;    Panels = &amp;lt;&lt;br/&gt;      item&lt;br/&gt;        Width = 50&lt;br/&gt;      &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&amp;gt;&lt;br/&gt;    SimplePanel = False&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Memo2: TMemo&lt;br/&gt;    Left = 8&lt;br/&gt;    Top = 208&lt;br/&gt;    Width = 497&lt;br/&gt;    Height = 89&lt;br/&gt;    TabOrder = 6&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; ServerSocket: TServerSocket&lt;br/&gt;    Active = False&lt;br/&gt;    Port = 1025&lt;br/&gt;    ServerType = stNonBlocking&lt;br/&gt;    OnListen = ServerSocketListen&lt;br/&gt;    OnGetSocket = ServerSocketGetSocket&lt;br/&gt;    OnClientConnect = ServerSocketClientConnect&lt;br/&gt;    OnClientDisconnect = ServerSocketClientDisconnect&lt;br/&gt;    OnClientRead = ServerSocketClientRead&lt;br/&gt;    OnClientError = ServerSocketClientError&lt;br/&gt;    Left = 112&lt;br/&gt;    Top = 8&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;.&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;客户端部分&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;img id="Code_Closed_Image_800809" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_800809').style.display='none'; document.getElementById('Code_Open_Image_800809').style.display='inline'; document.getElementById('Code_Open_Text_800809').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"&gt;&lt;img style="display: none" id="Code_Open_Image_800809" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_800809').style.display='none'; getElementById('Code_Closed_Image_800809').style.display='inline'; getElementById('Code_Closed_Text_800809').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"&gt;&lt;span id="Code_Closed_Text_800809" class="cnblogs_code_Collapse"&gt;PAS&lt;/span&gt;&lt;span style="display: none" id="Code_Open_Text_800809"&gt;&lt;span style="color: #0000ff"&gt;unit&lt;/span&gt; Unit1;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;interface&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;uses&lt;/span&gt;&lt;br/&gt;  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,&lt;br/&gt;  Dialogs, StdCtrls, ScktComp, ComCtrls;&lt;br/&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;const&lt;/span&gt;&lt;br/&gt;    SocketHost='192.168.86.28';  &lt;span style="color: #008000"&gt;//  服务器端地址&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;type&lt;/span&gt;&lt;br/&gt;  TForm1 = class(TForm)&lt;br/&gt;    tbConnected: TButton;&lt;br/&gt;    tbSend: TButton;&lt;br/&gt;    tbClose: TButton;&lt;br/&gt;    tbDisconnected: TButton;&lt;br/&gt;    ClientSocket: TClientSocket;&lt;br/&gt;    Edit1: TEdit;&lt;br/&gt;    Memo1: TMemo;&lt;br/&gt;    StatusBar: TStatusBar;&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; tbConnectedClick(Sender: TObject);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; tbDisconnectedClick(Sender: TObject);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ClientSocketRead(Sender: TObject; Socket: TCustomWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; tbSendClick(Sender: TObject);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; tbCloseClick(Sender: TObject);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; FormShow(Sender: TObject);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ClientSocketConnect(Sender: TObject;&lt;br/&gt;      Socket: TCustomWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ClientSocketConnecting(Sender: TObject;&lt;br/&gt;      Socket: TCustomWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ClientSocketDisconnect(Sender: TObject;&lt;br/&gt;      Socket: TCustomWinSocket);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; FormClose(Sender: TObject; &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; Action: TCloseAction);&lt;br/&gt;    &lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; ClientSocketError(Sender: TObject; Socket: TCustomWinSocket;&lt;br/&gt;      ErrorEvent: TErrorEvent; &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; ErrorCode: Integer);&lt;br/&gt;  private&lt;br/&gt;    { Private declarations }&lt;br/&gt;  public&lt;br/&gt;    { Public declarations }&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt;&lt;br/&gt;  Form1: TForm1;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;implementation&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;{$R *.dfm}&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  打开套接字连接&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.tbConnectedClick(Sender: TObject);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  ClientSocket.Open;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  关闭套接字连接&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.tbDisconnectedClick(Sender: TObject);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  ClientSocket.Close;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  接受服务器端的回复&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ClientSocketRead(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  Memo1.Lines.Add(Socket.ReceiveText);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  发送信息到服务器&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.tbSendClick(Sender: TObject);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  ClientSocket.Socket.SendText(Edit1.Text);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.tbCloseClick(Sender: TObject);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  Close;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  设置要连接的服务器端地址&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.FormShow(Sender: TObject);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  ClientSocket.Host:=SocketHost;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  已经连接到服务器端&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ClientSocketConnect(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  tbSend.Enabled:=True;&lt;br/&gt;  tbDisconnected.Enabled:=True;&lt;br/&gt;  StatusBar.Panels[0].Text:='Connected'+Socket.RemoteAddress;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  正在连接到服务器端&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ClientSocketConnecting(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  StatusBar.Panels[0].Text:='Connecting &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; server';&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #008000"&gt;//  当断开与服务器端的连接是发生&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ClientSocketDisconnect(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  tbSend.Enabled:=False;&lt;br/&gt;  tbDisconnected.Enabled:=False;&lt;br/&gt;  StatusBar.Panels[0].Text:='Close Connect &lt;span style="color: #0000ff"&gt;to&lt;/span&gt;'+Socket.RemoteHost;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.FormClose(Sender: TObject; &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; Action: TCloseAction);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  ClientSocket.Close;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;procedure&lt;/span&gt; TForm1.ClientSocketError(Sender: TObject;&lt;br/&gt;  Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; ErrorCode: Integer);&lt;br/&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;br/&gt;  StatusBar.Panels[0].Text:='Connect &lt;span style="color: #0000ff"&gt;to&lt;/span&gt; server error';&lt;br/&gt;  ErrorCode:=0;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;.&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;img id="Code_Closed_Image_462156" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_462156').style.display='none'; document.getElementById('Code_Open_Image_462156').style.display='inline'; document.getElementById('Code_Open_Text_462156').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" height="16"&gt;&lt;img style="display: none" id="Code_Open_Image_462156" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_462156').style.display='none'; getElementById('Code_Closed_Image_462156').style.display='inline'; getElementById('Code_Closed_Text_462156').style.display='inline';" align="top" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" height="16"&gt;&lt;span id="Code_Closed_Text_462156" class="cnblogs_code_Collapse"&gt;DFM&lt;/span&gt;&lt;span style="display: none" id="Code_Open_Text_462156"&gt;&lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Form1: TForm1&lt;br/&gt;  Left = 316&lt;br/&gt;  Top = 279&lt;br/&gt;  Width = 530&lt;br/&gt;  Height = 325&lt;br/&gt;  Caption = 'Client'&lt;br/&gt;  Color = clBtnFace&lt;br/&gt;  Font.Charset = GB2312_CHARSET&lt;br/&gt;  Font.Color = clWindowText&lt;br/&gt;  Font.Height = -11&lt;br/&gt;  Font.Name = 'MS Sans Serif'&lt;br/&gt;  Font.Style = []&lt;br/&gt;  OldCreateOrder = False&lt;br/&gt;  OnClose = FormClose&lt;br/&gt;  OnShow = FormShow&lt;br/&gt;  PixelsPerInch = 96&lt;br/&gt;  TextHeight = 13&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; tbConnected: TButton&lt;br/&gt;    Left = 16&lt;br/&gt;    Top = 32&lt;br/&gt;    Width = 75&lt;br/&gt;    Height = 25&lt;br/&gt;    Caption = 'tbConnected'&lt;br/&gt;    TabOrder = 0&lt;br/&gt;    OnClick = tbConnectedClick&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; tbSend: TButton&lt;br/&gt;    Left = 16&lt;br/&gt;    Top = 80&lt;br/&gt;    Width = 75&lt;br/&gt;    Height = 25&lt;br/&gt;    Caption = 'tbSend'&lt;br/&gt;    TabOrder = 1&lt;br/&gt;    OnClick = tbSendClick&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; tbClose: TButton&lt;br/&gt;    Left = 16&lt;br/&gt;    Top = 128&lt;br/&gt;    Width = 75&lt;br/&gt;    Height = 25&lt;br/&gt;    Caption = 'tbClose'&lt;br/&gt;    TabOrder = 2&lt;br/&gt;    OnClick = tbCloseClick&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; tbDisconnected: TButton&lt;br/&gt;    Left = 16&lt;br/&gt;    Top = 176&lt;br/&gt;    Width = 97&lt;br/&gt;    Height = 25&lt;br/&gt;    Caption = 'tbDisconnected'&lt;br/&gt;    TabOrder = 3&lt;br/&gt;    OnClick = tbDisconnectedClick&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Edit1: TEdit&lt;br/&gt;    Left = 304&lt;br/&gt;    Top = 16&lt;br/&gt;    Width = 177&lt;br/&gt;    Height = 21&lt;br/&gt;    TabOrder = 4&lt;br/&gt;    Text = 'Edit1'&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; Memo1: TMemo&lt;br/&gt;    Left = 304&lt;br/&gt;    Top = 48&lt;br/&gt;    Width = 185&lt;br/&gt;    Height = 121&lt;br/&gt;    Lines.Strings = (&lt;br/&gt;      'Memo1')&lt;br/&gt;    TabOrder = 5&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; StatusBar: TStatusBar&lt;br/&gt;    Left = 0&lt;br/&gt;    Top = 279&lt;br/&gt;    Width = 522&lt;br/&gt;    Height = 19&lt;br/&gt;    Panels = &amp;lt;&lt;br/&gt;      item&lt;br/&gt;        Width = 50&lt;br/&gt;      &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&amp;gt;&lt;br/&gt;    SimplePanel = False&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;object&lt;/span&gt; ClientSocket: TClientSocket&lt;br/&gt;    Active = False&lt;br/&gt;    ClientType = ctNonBlocking&lt;br/&gt;    Port = 1025&lt;br/&gt;    OnConnecting = ClientSocketConnecting&lt;br/&gt;    OnConnect = ClientSocketConnect&lt;br/&gt;    OnDisconnect = ClientSocketDisconnect&lt;br/&gt;    OnRead = ClientSocketRead&lt;br/&gt;    OnError = ClientSocketError&lt;br/&gt;    Left = 120&lt;br/&gt;    Top = 32&lt;br/&gt;  &lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;.&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;span&gt;&lt;a href="http://files.cnblogs.com/dashan9zj/SocketDemo.rar"&gt;Demo下载&lt;/a&gt;&lt;/span&gt;&lt;img src="http://www.cnblogs.com/dashan9zj/aggbug/1754894.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/dashan9zj/archive/2010/06/09/1754894.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2010/06/03/1750996.html</id><title type="text">SQL*Plus 参考</title><summary type="text">SQL*Plus: Release 10.2.0.3.0 - Production on 星期四 6月 3 13:59:35 2010Copyright (c) 1982, 2006, Oracle. All Rights Reserved.SQL*Plus: Release 10.2.0.3.0 - ProductionCopyright (c) 1982, 2006, Oracle. All ...</summary><published>2010-06-03T11:42:00Z</published><updated>2010-06-03T11:42:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2010/06/03/1750996.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2010/06/03/1750996.html"/><content type="html">&lt;p&gt;SQL*Plus: Release 10.2.0.3.0 - Production on 星期四 6月 3 13:59:35 2010&lt;/p&gt;&lt;p&gt;Copyright (c) 1982, 2006, Oracle.&amp;nbsp; All Rights Reserved.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;SQL*Plus: Release 10.2.0.3.0 - Production&lt;/p&gt;&lt;p&gt;Copyright (c) 1982, 2006, Oracle.&amp;nbsp; All Rights Reserved.&lt;/p&gt;&lt;p&gt;用法 1: sqlplus -H | -V&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -H&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 显示 SQL*Plus 版本和&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; 用法帮助。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -V&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 显示 SQL*Plus 版本。&lt;/p&gt;&lt;p&gt;用法 2: sqlplus [ [&amp;lt;option&amp;gt;] [&amp;lt;logon&amp;gt;] [&amp;lt;start&amp;gt;] ]&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;lt;option&amp;gt; 为: [-C &amp;lt;version&amp;gt;] [-L] [-M "&amp;lt;options&amp;gt;"] [-R &amp;lt;level&amp;gt;] [-S]&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -C &amp;lt;version&amp;gt;&amp;nbsp;&amp;nbsp; 将受影响的命令的兼容性设置为&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;lt;version&amp;gt; 指定的版本。该版本具有&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; "x.y[.z]" 格式。例如, -C 10.2.0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -L&amp;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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;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;&amp;nbsp;&amp;nbsp;&amp;nbsp; -M "&amp;lt;options&amp;gt;" 设置输出的自动 HTML 标记。选项&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; 的格式为:&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; HTML [ON|OFF] [HEAD text] [BODY text] [TABLE text]&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; [ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -R &amp;lt;level&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 设置受限模式, 以禁用与文件系统交互的&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; SQL*Plus 命令。级别可以&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; 是 1, 2 或 3。最高限制级别为 -R 3, 该级别&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; 禁用与文件系统交互的&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; 所有用户命令。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; -S&amp;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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 命令的 SQL*Plus 标帜, 提示和回显&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; 的显示。&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;lt;logon&amp;gt; 为: (&amp;lt;username&amp;gt;[/&amp;lt;password&amp;gt;][@&amp;lt;connect_identifier&amp;gt;] | /)&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; [AS SYSDBA | AS SYSOPER] | /NOLOG&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 指定数据库帐户用户名, 口令和数据库连接&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 的连接标识符。如果没有连接&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 标识符, SQL*Plus 将连接到默认数据库。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; AS SYSDBA 和 AS SYSOPER 选项是数据库管理&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 权限。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /NOLOG 选项可启动 SQL*Plus 而不连接到&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 数据库。&lt;/p&gt;&lt;p&gt;&amp;nbsp; &amp;lt;start&amp;gt; 为: @&amp;lt;URL&amp;gt;|&amp;lt;filename&amp;gt;[.&amp;lt;ext&amp;gt;] [&amp;lt;parameter&amp;gt; ...]&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 使用将分配给脚本中的替代变量的指定参数&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 从 Web 服务器 (URL) 或本地文件系统 (filename.ext)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 运行指定的 SQL*Plus 脚本。&lt;/p&gt;&lt;p&gt;在启动 SQL*Plus 并且执行 CONNECT 命令后, 将运行站点概要&lt;br /&gt;文件 (例如, $ORACLE_HOME/sqlplus/admin/glogin.sql) 和用户概要文件&lt;br /&gt;(例如, 工作目录中的 login.sql)。这些文件&lt;br /&gt;可包含 SQL*Plus 命令。&lt;/p&gt;&lt;p&gt;有关详细信息, 请参阅 SQL*Plus 用户指南和参考。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/dashan9zj/aggbug/1750996.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/dashan9zj/archive/2010/06/03/1750996.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2010/05/12/1733719.html</id><title type="text">ASP.NET 注册选项</title><summary type="text">C:\Program Files\Microsoft Visual Studio 9.0\VC&gt;aspnet_regiis /?在本地计算机上安装和卸载 ASP.NET 的管理实用工具(2.0.50727)。Copyright (c) Microsoft Corporation. All rights reserved.注意: 此实用程序在 Windows Vista 操作系统上的功能有限。...</summary><published>2010-05-12T07:06:00Z</published><updated>2010-05-12T07:06:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2010/05/12/1733719.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2010/05/12/1733719.html"/><content type="text">C:\Program Files\Microsoft Visual Studio 9.0\VC&gt;aspnet_regiis /?在本地计算机上安装和卸载 ASP.NET 的管理实用工具(2.0.50727)。Copyright (c) Microsoft Corporation. All rights reserved.注意: 此实用程序在 Windows Vista 操作系统上的功能有限。...</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2010/04/19/1715319.html</id><title type="text">JScript通过ADO操作数据库</title><summary type="text">思路：通过JScript中的 new ActiveXObject()方法来实现对对象的调用 // Demo 1 读取数据function readFromDB(){var s=""; // 创建数据库对象 var objdbConn = new ActiveXObject("ADODB.Connection"); // DSN字符串 //var strdsn = "Driver={SQL ...</summary><published>2010-04-19T05:30:00Z</published><updated>2010-04-19T05:30:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2010/04/19/1715319.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2010/04/19/1715319.html"/><content type="text">思路：通过JScript中的 new ActiveXObject()方法来实现对对象的调用 // Demo 1 读取数据function readFromDB(){var s=""; // 创建数据库对象 var objdbConn = new ActiveXObject("ADODB.Connection"); // DSN字符串 //var strdsn = "Driver={SQL ...</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2010/01/05/1639867.html</id><title type="text">Delphi调用BarTender打印条码标签简明开发教程  转</title><summary type="text">摘要:本文就简单使用Delphi调用BarTender之ActiveX组件打印条码的开发过程做介绍. 1. 前言 最近一个项目需要在扫描条码后按固定的格式打印。条码打印软件客户习惯使用的是BarTender，为了保持客户的习惯以及降低开发风险，决定使用Delphi调用BarTender来完成打印条码标签功能。 此功能的重点在于： a) 使用BarTender格式打印 b) 格式中有需要变动的部分 ...</summary><published>2010-01-05T12:14:00Z</published><updated>2010-01-05T12:14:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2010/01/05/1639867.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2010/01/05/1639867.html"/><content type="text">摘要:本文就简单使用Delphi调用BarTender之ActiveX组件打印条码的开发过程做介绍. 1. 前言 最近一个项目需要在扫描条码后按固定的格式打印。条码打印软件客户习惯使用的是BarTender，为了保持客户的习惯以及降低开发风险，决定使用Delphi调用BarTender来完成打印条码标签功能。 此功能的重点在于： a) 使用BarTender格式打印 b) 格式中有需要变动的部分 ...</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2009/12/08/1619185.html</id><title type="text">转 数据库缓存依赖配置</title><summary type="text">使用SQL Server高速缓存依赖性的步骤： 一，使数据库支持SQL高速缓存依赖性。 二，使表支持SQL高速缓存依赖性。 三，在ASP.NET应用程序的web.config文件中包含SQL连接字符串。 四，以如下方式利用SQL高速缓存依赖性： 1)在代码中编程创建一个SqlCacheDependency对象。 2)给OutputCache指令添加SqlCacheDependency属性。 3)通...</summary><published>2009-12-08T02:44:00Z</published><updated>2009-12-08T02:44:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2009/12/08/1619185.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2009/12/08/1619185.html"/><content type="text">使用SQL Server高速缓存依赖性的步骤： 一，使数据库支持SQL高速缓存依赖性。 二，使表支持SQL高速缓存依赖性。 三，在ASP.NET应用程序的web.config文件中包含SQL连接字符串。 四，以如下方式利用SQL高速缓存依赖性： 1)在代码中编程创建一个SqlCacheDependency对象。 2)给OutputCache指令添加SqlCacheDependency属性。 3)通...</content></entry><entry><id>http://www.cnblogs.com/dashan9zj/archive/2009/12/07/1618761.html</id><title type="text">转   未能使用提供程序 &amp;quot;RsaProtectedConfigurationProvider&amp;quot; 进行解密 的解决办法</title><summary type="text">未能使用提供程序 "RsaProtectedConfigurationProvider" 进行解密 的解决办法 如何使用 Enterprise Library 3.0 的Cryptography Application Block 处理加密 本文不演示如何使用配置工具对配置区进行加密，也不演示如何导出导入 key 文件，而主要解决两个问题： 1.我们使用配置工具对配置区进行加密后，(通常 con...</summary><published>2009-12-07T08:49:00Z</published><updated>2009-12-07T08:49:00Z</updated><author><name>dashan</name><uri>http://www.cnblogs.com/dashan9zj/</uri></author><link rel="alternate" href="http://www.cnblogs.com/dashan9zj/archive/2009/12/07/1618761.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/dashan9zj/archive/2009/12/07/1618761.html"/><content type="text">未能使用提供程序 "RsaProtectedConfigurationProvider" 进行解密 的解决办法 如何使用 Enterprise Library 3.0 的Cryptography Application Block 处理加密 本文不演示如何使用配置工具对配置区进行加密，也不演示如何导出导入 key 文件，而主要解决两个问题： 1.我们使用配置工具对配置区进行加密后，(通常 con...</content></entry></feed>
