<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_Talo</title><subtitle type="text"/><id>http://feed.cnblogs.com/blog/u/56427/rss</id><updated>2010-06-02T07:53:46Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/56427/rss"/><entry><id>http://www.cnblogs.com/talo/archive/2010/04/08/1707211.html</id><title type="text">ARP双向绑定简单举例解释附ARP批处理</title><summary type="text">ARP双向绑定简单举例解释 ARP欺骗的出现,才让大家对ARP这个词有了认识 但什么是ARP呢? ARP土一点的说法就叫地址转换协议,就是把IP转成MAC的过程,实际上机子在通讯都是通过MAC在通讯的 MAC:网卡物理地址 假设有案例如下,某个公司,有三台电脑 (分别称为 A机192。168。1。2MAC00-01-01-01-01-02 B机192。168。1。3MAC00-01-01-01-0...</summary><published>2010-04-08T04:13:00Z</published><updated>2010-04-08T04:13:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2010/04/08/1707211.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2010/04/08/1707211.html"/><content type="html">&lt;p&gt;ARP双向绑定简单举例解释&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;ARP欺骗的出现,才让大家对ARP这个词有了认识&amp;nbsp;&amp;nbsp; &lt;br /&gt;但什么是ARP呢?&amp;nbsp;&amp;nbsp; &lt;br /&gt;ARP土一点的说法就叫地址转换协议,就是把IP转成MAC的过程,实际上机子在通讯都是通过MAC在通讯的&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;MAC:网卡物理地址&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;假设有案例如下,某个公司,有三台电脑&amp;nbsp;&amp;nbsp; &lt;br /&gt;(分别称为&amp;nbsp;&amp;nbsp; &lt;br /&gt;A机192。168。1。2&amp;nbsp;MAC&amp;nbsp;00-01-01-01-01-02&amp;nbsp;&amp;nbsp; &lt;br /&gt;B机192。168。1。3&amp;nbsp;MAC&amp;nbsp;00-01-01-01-01-03&amp;nbsp;&amp;nbsp; &lt;br /&gt;C机192。168。1。4&amp;nbsp;MAC&amp;nbsp;00-01-01-01-01-04)&amp;nbsp;&amp;nbsp; &lt;br /&gt;一台代理服务器(网关):&amp;nbsp;&amp;nbsp; &lt;br /&gt;(以下简称代服,IP假设如192.168.1.1&amp;nbsp;MAC假设如下00-01-01-01-01-01)&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;于某天发生频繁无法上网的问题,开始做出如下检测,安装网络执法官(内网IP,MAC监控防护,千万不要用来做坏事,会有报应的)发现有两条记录&amp;nbsp;&amp;nbsp; &lt;br /&gt;00-01-01-01-01-01&amp;nbsp;192。168。1。1&amp;nbsp;&amp;nbsp; &lt;br /&gt;00-01-01-01-01-03&amp;nbsp;192。168。1。1&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;看到以上两条记录,大家能联想到什么吗?如果能理解这两条记录并知道其原由,那么你已具备检测ARP攻击的发源机子了!&amp;nbsp;&amp;nbsp; &lt;br /&gt;这两条记录意思是,第一条记录为真正的代服的IP和MAC的记录,而第二条呢?为什么B机的MAC却套在了路由的网关IP上来了呢,这就是ARP欺骗产生的典型的现象,有这样一个或多个的相同现象就毫无疑问地说,你中了ARP了!&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;ARP的出现大家需要的不仅是认识还要知道防范的方法,在下知识浅薄,仅仅只会用一种方法来防ARP------ARP双向绑定:&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;双向,这个词需要大家去小小理解一下,双向,两个方向或两个对方?&amp;nbsp;&amp;nbsp; &lt;br /&gt;代服也就是网关为其中一方,客户机和各种服务器为另外一方,这样两方的说法大家能理解吗?&amp;nbsp;&amp;nbsp; &lt;br /&gt;就比如(代服)住在一楼,(客户机)住在三楼,代服在去找客户机只要记得他在三楼就懂得怎么走了,而客户机要找代服只要知道他在一楼也是同样能找到&amp;nbsp;&amp;nbsp; &lt;br /&gt;这样的地址记法就等同于MAC地址绑定&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;差不多就是那意思,那如何实现呢?&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;以上ARP小解,以下开始进行ARP防范:&amp;nbsp;&amp;nbsp; &lt;br /&gt;1、在代理服务器上做一个批处理,或用一些专用的ARP扫描绑定工具&amp;nbsp;&amp;nbsp; &lt;br /&gt;@echo&amp;nbsp;off&amp;nbsp;&amp;nbsp; &lt;br /&gt;arp&amp;nbsp;-d&amp;nbsp;&amp;nbsp; &lt;br /&gt;arp&amp;nbsp;-s&amp;nbsp;192.168.1.2&amp;nbsp;00-01-01-01-01-02&amp;nbsp;&amp;nbsp; &lt;br /&gt;arp&amp;nbsp;-s&amp;nbsp;192.168.1.3&amp;nbsp;00-01-01-01-01-03&amp;nbsp;&amp;nbsp; &lt;br /&gt;arp&amp;nbsp;-s&amp;nbsp;192.168.1.4&amp;nbsp;00-01-01-01-01-04&amp;nbsp;&amp;nbsp; &lt;br /&gt;exit&amp;nbsp;&amp;nbsp; &lt;br /&gt;另存为BAT文件,在代服上运行即可&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;2、在客户机的启动里做一个批处理BAT文件,内容如下:&amp;nbsp;&amp;nbsp; &lt;br /&gt;@echo&amp;nbsp;off&amp;nbsp;&amp;nbsp; &lt;br /&gt;arp&amp;nbsp;-d&amp;nbsp;&amp;nbsp; &lt;br /&gt;arp&amp;nbsp;-s&amp;nbsp;192.168.1.1&amp;nbsp;00-01-01-01-01-01&amp;nbsp;&amp;nbsp; &lt;br /&gt;exit&amp;nbsp;&amp;nbsp; &lt;br /&gt;有使用万象网管的朋友,可以在服务端做这个批文件,进万象服务端设置&amp;#8220;会员上机执行以下程序&amp;#8221;指向这个绑定网关的批处理,这样客户机便会开机就绑定网关了!&amp;nbsp;&amp;nbsp; &lt;br /&gt;这样ARP双向绑定完成了!&amp;nbsp;&amp;nbsp; &lt;br /&gt;用路由的朋友做法也差不多,在路由绑定所有客户机的IP和MAC,客户机绑定路由的IP和MAC即可~~&amp;nbsp;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/cc&gt;arp&amp;nbsp; &lt;br /&gt;&amp;nbsp;@echo&amp;nbsp;off&amp;nbsp; &lt;br /&gt;arp&amp;nbsp;-d&amp;nbsp; &lt;br /&gt;arp&amp;nbsp;-s&amp;nbsp;网关IP&amp;nbsp;网关MAC&amp;nbsp; &lt;br /&gt;exit&lt;/cc&gt;&lt;br /&gt;&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;@echo&amp;nbsp;OFF &lt;br /&gt;if&amp;nbsp;%~n0==arp&amp;nbsp;exit &lt;br /&gt;if&amp;nbsp;%~n0==Arp&amp;nbsp;exit &lt;br /&gt;if&amp;nbsp;%~n0==ARP&amp;nbsp;exit &lt;br /&gt;echo&amp;nbsp;正在获取本机信息..... &lt;br /&gt;:IP &lt;br /&gt;FOR&amp;nbsp;/f&amp;nbsp;"skip=13&amp;nbsp;tokens=15&amp;nbsp;usebackq&amp;nbsp;"&amp;nbsp;%%i&amp;nbsp;in&amp;nbsp;(`ipconfig&amp;nbsp;/all`)&amp;nbsp;do&amp;nbsp;Set&amp;nbsp;IP=%%i&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;GOTO&amp;nbsp;MAC &lt;br /&gt;:MAC &lt;br /&gt;echo&amp;nbsp;IP:%IP% &lt;br /&gt;FOR&amp;nbsp;/f&amp;nbsp;"skip=13&amp;nbsp;tokens=12&amp;nbsp;usebackq&amp;nbsp;"&amp;nbsp;%%i&amp;nbsp;in&amp;nbsp;(`ipconfig&amp;nbsp;/all`)&amp;nbsp;do&amp;nbsp;Set&amp;nbsp;MAC=%%i&amp;nbsp;&amp;amp;&amp;amp;&amp;nbsp;GOTO&amp;nbsp;GateIP &lt;br /&gt;:GateIP &lt;br /&gt;echo&amp;nbsp;MAC:%MAC% &lt;br /&gt;arp&amp;nbsp;-s&amp;nbsp;%IP%&amp;nbsp;%MAC% &lt;br /&gt;echo&amp;nbsp;绑定网关 &lt;br /&gt;arp&amp;nbsp;-s&amp;nbsp;192.168.0.254&amp;nbsp;00-14-78-CE-C7-54&amp;nbsp;(192.168.0.254为内网网关,00-14-78-CE-C7-54为网关对应MAC) &lt;br /&gt;echo&amp;nbsp;操作完成!!! &lt;br /&gt;exit&lt;/cc&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/talo/aggbug/1707211.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/talo/archive/2010/04/08/1707211.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/talo/archive/2010/04/08/1707052.html</id><title type="text">局域网内防止ARP攻击(绑定的是自己的IP和MAC)</title><summary type="text">网络病毒之所以能以惊人的速度传播，是因为它们都有极强的利用漏洞攻击网络上其他机器的能力，而局域网ARP漏洞攻击，则是目前暴发流行的各种网络病毒最常用的招数，包括目前正在大规模暴发的&amp;#8220;机器狗&amp;#8221;，也正是利用ARP漏洞在局域网中传染开去。ARP（Address Resolution Protocol）又被称为地址转换协议，是用来实现 IP 地址与本地网络认识的物理地址（以太网 M...</summary><published>2010-04-08T02:47:00Z</published><updated>2010-04-08T02:47:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2010/04/08/1707052.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2010/04/08/1707052.html"/><content type="html">&lt;p&gt;网络病毒之所以能以惊人的速度传播，是因为它们都有极强的利用漏洞攻击网络上其他机器的能力，而局域网ARP漏洞攻击，则是目前暴发流行的各种网络病毒最常用的招数，包括目前正在大规模暴发的&amp;#8220;机器狗&amp;#8221;，也正是利用ARP漏洞在局域网中传染开去。&lt;/p&gt;&#xD;
&lt;p&gt;ARP（Address Resolution Protocol）又被称为地址转换协议，是用来实现 IP 地址与本地网络认识的物理地址（以太网 MAC 地址）之间的映射。在以太网络中有一张表格，通常称为 ARP 缓冲（ARP cache），来维持每个 MAC 地址与其相应的 IP 地址之间的对应关系。ARP 提供一种形成该对应关系的规则以及提供双向地址转换。ARP协议很像一个思想不坚定容易被骗的人，就像一个快递员，要送信给"张三"，只在马路上问"张三住那儿？"，并投递给最近和他说"我就是！"或"张三住那间！"，来决定如何投递一样。在一个人人诚实的地方，快递员的工作还是能正常进行；但若是旁人看快递物品值钱，想要欺骗取得的话，快递员这种工作方式就会带来混乱了。&lt;/p&gt;&#xD;
&lt;p&gt;常见ARP攻击对象有两种，一是网络网关，二是局域网上的计算机。攻击网络网关就好比发送错误的地址信息给快递员，让快递员失去正确目标，所有信件无法正常送达；而攻击一般计算机就是直接和人谎称自己就是快递员，让用户把需要传送的物品传送给发动攻击的计算机。由于一般的计算机及路由器的ARP协议的意志都不坚定，因此只要有恶意计算机在局域网持续发出错误的ARP讯息，就会让计算机及路由器信以为真，作出错误的传送网络包动作。一般的ARP欺骗攻击就是以这样的方式，造成网络运作不正常，达到盗取用户密码或破坏网络运作的目的。而要从根本上彻底解决这种欺骗攻击，唯一的办法就是对局域网中的每台机器包括网关在内进行ARP地址双向绑定。&lt;/p&gt;&#xD;
&lt;p&gt;首先说网关的绑定，这个比较简单，一般的网关路由器或者代理软件均有ARP绑定功能，以笔者使用的路由器为例，绑定的界面简单直观&lt;/p&gt;&#xD;
&lt;p&gt;选择静态ARP绑定设置后出现表单&lt;/p&gt;&#xD;
&lt;p&gt;在此填入需要绑定的IP地址和MAC地址，然后保存即可。&lt;/p&gt;&#xD;
&lt;p&gt;若需要对成批的地址进行绑定，也可以选择ARP映射表，会列出局域网中所有正在使用的机器的IP和MAC，方便我们成批的添加绑定&lt;/p&gt;&#xD;
&lt;p&gt;点取&amp;#8220;全部导入&amp;#8221;，然后切换回&amp;#8220;静态地址绑定&amp;#8221;页面，将要绑定的地址勾中即可&lt;/p&gt;&#xD;
&lt;p&gt;在此特别提请注意的是：网关自己的IP和MAC地址也需要在这里做好绑定。&lt;/p&gt;&#xD;
&lt;p&gt;至此网关部分的ARP绑定工作已经完成，然而只在网关做绑定，防护是不完整的，我们还需要对局域网中的每一台客户机进行单独的绑定。&lt;/p&gt;&#xD;
&lt;p&gt;客户机的绑定工作分成两部分，一部分是绑定网关，另一部分是绑定自己。&lt;/p&gt;&#xD;
&lt;p&gt;绑定网关的操作比较简单，以WINXP为例，绑定的命令是：&lt;/p&gt;&#xD;
&lt;p&gt;Arp &amp;#8211;s (ip) (mac)&lt;/p&gt;&#xD;
&lt;p&gt;比如：arp &amp;#8211;s 192.168.0.1 00-14-2A-5F-99-E1&lt;/p&gt;&#xD;
&lt;p&gt;192.168.0.1 为网关路由器的IP地址，00-14-2A-5F-99-E1 为路由器的MAC地址。&lt;/p&gt;&#xD;
&lt;p&gt;建议将这条命令做成批处理放在启动组里，方便系统启动时自动运行。&lt;/p&gt;&#xD;
&lt;p&gt;接下来需要绑定的是客户机自己的IP和MAC，从原理上讲和绑定路由器是一样的操作，不过考虑到局域网中的客户机一般很多，要一台一台的查IP和MAC工作量很繁重，所以我们利用一个批处理来自动完成对每一台客户机的绑定：&lt;/p&gt;&#xD;
&lt;p&gt;@echo off&lt;/p&gt;&#xD;
&lt;p&gt;if exist ipconfig.txt del ipconfig.txt&lt;/p&gt;&#xD;
&lt;p&gt;ipconfig /all &amp;gt;ipconfig.txt&lt;/p&gt;&#xD;
&lt;p&gt;if exist phyaddr.txt del phyaddr.txt&lt;/p&gt;&#xD;
&lt;p&gt;find "Physical Address" ipconfig.txt &amp;gt;phyaddr.txt&lt;/p&gt;&#xD;
&lt;p&gt;for /f "skip=2 tokens=12" %%M in (phyaddr.txt) do set Mac=%%M &#xD;
&lt;p&gt;if exist IPAddr.txt del IPaddr.txt&lt;/p&gt;&#xD;
&lt;p&gt;find "IP Address" ipconfig.txt &amp;gt;IPAddr.txt&lt;/p&gt;&#xD;
&lt;p&gt;for /f "skip=2 tokens=15" %%I in (IPAddr.txt) do set IP=%%I&lt;/p&gt;&#xD;
&lt;p&gt;arp -s %IP% %Mac%&lt;/p&gt;&#xD;
&lt;p&gt;del ipaddr.txt&lt;/p&gt;&#xD;
&lt;p&gt;del ipconfig.txt&lt;/p&gt;&#xD;
&lt;p&gt;del phyaddr.txt&lt;/p&gt;&#xD;
&lt;p&gt;exit&lt;/p&gt;&#xD;
&lt;p&gt;同样也建议将这个批处理放在系统的启动组里，方便系统启动时自动运行。&lt;/p&gt;&#xD;
&lt;p&gt;接下来可以检查下我们的工作成果，在CMD命令行下打 arp &amp;#8211;a ，提示如下：&lt;/p&gt;&#xD;
&lt;p&gt;Internet Address Physical Address Type&lt;/p&gt;&#xD;
&lt;p&gt;192.168.0.1 00-14-2A-5F-99-E1 static&lt;/p&gt;&#xD;
&lt;p&gt;192.168.0.9 00-0a-eb-4e-6f-67 static&lt;/p&gt;&#xD;
&lt;p&gt;绑定状态为&amp;#8220;STATIC&amp;#8221;说明绑定成功为静态，至此大功告成！&lt;/p&gt;&#xD;
&lt;p&gt;其实网络病毒并不可怕，只要我们做好防护工作，打好系统补丁，即使有一天&amp;#8220;狼&amp;#8221;真的来了，我们也能将它拒之门外，确保一方网络平安。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/talo/aggbug/1707052.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/talo/archive/2010/04/08/1707052.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/talo/archive/2010/03/15/1686007.html</id><title type="text">delphi 控件安装</title><summary type="text">由于组件提供的方式不同，所以安装的方法也是不一样的，下面就目前常见的各种形式的组件的安装方法介绍一下。1、只有一个dcu文件的组件。dcu文件是编译好的单元文件，这样的组件是作者不想把源码公布。一般来说，作者必须说明此组件适合delphi的哪种版本，如果版本不对，在安装时就会出现错误。也正是因为没有源码，给使用者带来了不便，那就是一旦delphi版本升级，此组件就不能再使用了，当然有的作者给出了几...</summary><published>2010-03-15T03:08:00Z</published><updated>2010-03-15T03:08:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2010/03/15/1686007.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2010/03/15/1686007.html"/><content type="html">&lt;div&gt;由于组件提供的方式不同，所以安装的方法也是不一样的，下面就目前常见的各种形式的组件的安装方法介绍一下。&lt;br /&gt;&lt;br /&gt;1、只有一个dcu文件的组件。dcu文件是编译好的单元文件，这样的组件是作者不想把源码公布。一般来说，作者必须说明此组件适合delphi的哪种版本，如果版本不对，在安装时就会出现错误。也正是因为没有源码，给使用者带来了不便，那就是一旦delphi版本升级，此组件就不能再使用了，当然有的作者给出了几种版本的dcu文件，用户根据需要选择使用。这样的组件的安装方法是：在component菜单中，选择install component，在对话框中的"into existing package"页中，单击&amp;#8220;unit file name&amp;#8221;后的&amp;#8220;browse&amp;#8221;按钮，在打开的文件对话框中，将&amp;#8220;文件类型&amp;#8221;设定为*.dcu，找到要安装的dcu文件，按ok按钮返回"into existing package"页后再按ok按钮就可以安装了。注意，此时delphi会提示dclusr40.dpk将被重建，是否继续，ok就可以了。这里是将组件安装到dclusr40.dpk包中，此包从文件名上可以看出是用户自定义组件包，先安装到这个包中吧，下面再讲有关注意事项。安装完毕会有已经将组件注册完的提示信息以及安装到哪个组件页中的信息等，到&lt;br /&gt;组件面板上看看，一般会出现一个新的组件页，其中有刚安装的组件。&lt;br /&gt;&lt;br /&gt;2、只有 pas文件或既有pas又有dcu文件的组件。这种组件因为有pas文件，也就是说作者提供了源码，这就好办多了。安装的方法和上面是一样的，在文件类型中可以设定为dcu也可以设定为pas，建议设定为pas，这样可用你的delphi重新编译一下，看是否会出现问题。delphi升级后只能选择pas 文件安装，这样才能重新编译，使得组件能适应新delphi版本。这样的组件是很值得使用的，根据心铃的经验，没有源码的组件最好不要使用，一是存在 delphi版本升级后无法使用的问题，再者当程序出现问题后用户无法调试组件来判断是否是组件中存在bug。&lt;br /&gt;&lt;br /&gt;3、有dpk文件的组件包。带有dpk文件的组件包一般是有多个组件构成的，也就是说安装后会有多个组件供使用，如果只有一个组件作者一般不会制成dpk文件，使用上面的方式发布就可以了。对于这样的组件包，一般来说会有详细的安装说明文件，如上面提到的rxlib，由于组件复杂且安装时有先后顺序，作者不提供安装说明用户根本无法正确安装。如果没有安装说明文件，那么用下面的方法安装：在file菜单下，选择&amp;#8221;open&amp;#8230;&amp;#8221;打开dpk文件(文件类型列表框中选*.dpk)，在出现的package窗口中，工具栏上有install按钮，按此按钮即可进行安装。如果install按钮处于无效状态，那么先按compile按钮编译，一般来说编译之后install按钮就会处于有效状态，此时再按install按钮就可以了。&lt;br /&gt;&lt;br /&gt;4、带有bpl文件的组件包。一般来说这也是由多种组件构成的组件包，它其实是一个动态连接库文件（dll）。对于这种组件包的安装方法是：在component菜单下选择 &amp;#8220;install packages&amp;#8221;，然后单击add按钮，在打开的文件对话框中找到相应的bpl文件打开返回后，再单击ok按钮就可以了。&lt;br /&gt;&lt;br /&gt;5、activex控件的安装。要安装这类控件，需要先用regsvr32.exe注册，然后选择&lt;br /&gt;component 菜单中import activex control项。在import activex control打开的窗口中，只有已经注册的activex控件才出现在列表中，选中一个然后按install按钮就可以安装了。如果事先没有用 regsvr32.exe注册也可以按add按钮找到ocx文件即时注册，注册后再进行安装。&lt;br /&gt;&lt;br /&gt;几点说明：&lt;br /&gt;1 在拿到组件后先看是否有说明文件，一般来说在说明文件中有如何安装的指导，有些还会有组件的属性、事件、方法的使用说明，这些在使用时是非常重要的。&lt;br /&gt;2 在上面的组件（包）安装操作之前，最好将 *.bpl拷贝到你的system目录中，将&lt;br /&gt;*.pas、*.dcu、*.dcr、*.dp@拷贝到delphi的lib目录中再进行。&lt;/div&gt;&#xD;
&lt;div&gt;3 前面我们提到安&lt;br /&gt;装dcu 组件时，选用的是已经存在的dclusr40.dpk，当然也可以选择安装到一个新的包中，如果选择新包，需要先取一个名字比如demo，事实上安装完毕后用户可以找到的是demo.bpl，而找不到demo.dpk。假如你已经将一个组件安装到dclusr40.dpk中了，还想再安装一个组件，如果再安装到dclusr40.dpk中，安装后你得到提示，原来安装的那个组件已经被取消注册，你将无法使用了。这样不就成了只能安装一个组件了吗？除非你再安装到一个新的包中才可以两个组件同时使用。当然每安装一个组件生成一个新的bpl文件也未偿不可，但bpl文件就增加许多。能否在 dclusr40.dpk中多安装几个组件呢？当然是可以的。方法如下：用file菜单下的open打开dclusr40.dpk文件，单击add按钮，在打开的对话框中选择add unit页面，按unit file name后的&amp;#8220;browse&amp;#8221;按钮打开组件单元文件，ok即可，用此种方法这样可添加多个组件的单元文件，添加完毕，按一下编译按钮，然后&lt;br /&gt;再按 install按钮即可，如果单元文件是编译好的（dcu）可以直接按安装按钮。&lt;/div&gt;&#xD;
&lt;div&gt;4 组件的删除。光会安装可不行，还要会删除呀。很简单，在component菜单下，选择install packages，在列表中找到安装所在的bpl，按remove按钮，ok！再把bpl文件删掉就彻底了，如果不删除bpl文件，下次可以按安装bpl 组件的方法再安装使用。 &lt;/div&gt;&lt;img src="http://www.cnblogs.com/talo/aggbug/1686007.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/talo/archive/2010/03/15/1686007.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/talo/archive/2010/02/09/1666294.html</id><title type="text">邂逅</title><summary type="text">邂逅若是不美，就没有这般的煎熬与难奈，也因为邂逅是美，才让你我心绪颤动回荡&amp;#8230; 我们怎麽啦？我们到底怎麽啦？ 落叶别离了枝头，飘飘然随风出走，几经翻滚荡漾后，滴落水面欲寻沉浸&amp;#8230; 花叶的褐，是苦涩熬煮的落寞。花叶的红，是放纵肆意的轻狂。 花叶的黄，是沉溺温存的幸福。花叶的绿，是逐梦迷惘的青春。 水影与花，花与水，轻触的瞬间，纠缠交错出那般华丽魅惑的曲线，摇曳交响着轮回所包覆的偶...</summary><published>2010-02-09T03:17:00Z</published><updated>2010-02-09T03:17:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2010/02/09/1666294.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2010/02/09/1666294.html"/></entry><entry><id>http://www.cnblogs.com/talo/archive/2009/07/15/1523936.html</id><title type="text">什么是SHTML?与HTML的区别</title><summary type="text">问起SHTML和HTML的区别,如果用一句话来解释就是:SHTML 不是HTML而是一种服务器 API,shtml是服务器动态产成的html. 　　虽然两者都是超文本格式,但shtml是一种用于SSI技术的文件。 也就是Server Side Include--SSI 服务器端包含指令。 如果Web Server有SSI功能的话(大多数（尤其是基于Unix平台）的WEB服务器如Netscape E...</summary><published>2009-07-15T03:16:00Z</published><updated>2009-07-15T03:16:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2009/07/15/1523936.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2009/07/15/1523936.html"/></entry><entry><id>http://www.cnblogs.com/talo/archive/2009/07/06/1517817.html</id><title type="text">编程到底需不需数学知识？</title><summary type="text">编程到底需不要数学知识，数学知识对编程有多大的用处，类似这样标题的讨论，在网络上已经不知道被讨论多少次了。前两天又在老同事小白的blog上看到了他的看法。以前正方总是喜欢拿算法与效率来表明数学很重要的立场，反方或是最近普遍的观点是要依照需求。两方都没错，我也有一点小心得跟大家分享。 先来谈谈「数学」在大家的心中是长什么样子。我大学时念的是辅大应数，会选应数的原因是一、我的分数上不了资工，二、应数又...</summary><published>2009-07-06T08:37:00Z</published><updated>2009-07-06T08:37:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2009/07/06/1517817.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2009/07/06/1517817.html"/></entry><entry><id>http://www.cnblogs.com/talo/archive/2009/06/07/1498044.html</id><title type="text">MySQL5.0的JDBC驱动程序(转</title><summary type="text">MySQL5.0的JDBC驱动程序(转）2008-10-19 16:58语法Class.forName("com.mysql.jdbc.Driver");Connection con = DriverManager.getConnection("jdbc:mysql://host:port/database","user","password");编程1、用DriverManager登记mm.my...</summary><published>2009-06-07T04:57:00Z</published><updated>2009-06-07T04:57:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2009/06/07/1498044.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2009/06/07/1498044.html"/></entry><entry><id>http://www.cnblogs.com/talo/archive/2009/06/03/1495609.html</id><title type="text">insert into select与select into from</title><summary type="text">use testif (object_id('tbl_cursor') is null)begin--select i_id,s_user,s_pass into tbl_cursor select i_id,s_user,s_pass from test01--这是错误的select i_id,s_user,s_pass into tbl_cursor from test01select * i...</summary><published>2009-06-03T11:03:00Z</published><updated>2009-06-03T11:03:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2009/06/03/1495609.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2009/06/03/1495609.html"/></entry><entry><id>http://www.cnblogs.com/talo/archive/2009/06/03/1495482.html</id><title type="text">关于2个服务器数据库同步的存储过程</title><summary type="text">游标 游标 游标 游标 游标</summary><published>2009-06-03T08:50:00Z</published><updated>2009-06-03T08:50:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2009/06/03/1495482.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2009/06/03/1495482.html"/></entry><entry><id>http://www.cnblogs.com/talo/archive/2009/06/03/1495156.html</id><title type="text">Delphi与MSSQL2005连接</title><summary type="text">在电脑加入域的情况下，使用ADOConnection控件配置数据源时，在&amp;#8220;选择或输入服务器名称&amp;#8221;里只能识别&amp;#8220;.&amp;#8221;，而其他的IP地址以及机器名都不能解析(识别:找不到服务器地址)，即在&amp;#8220;在服务器上选择数据库&amp;#8221;里找不到可选的数据库。</summary><published>2009-06-03T02:44:00Z</published><updated>2009-06-03T02:44:00Z</updated><author><name>Talo</name><uri>http://www.cnblogs.com/talo/</uri></author><link rel="alternate" href="http://www.cnblogs.com/talo/archive/2009/06/03/1495156.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/talo/archive/2009/06/03/1495156.html"/></entry></feed>
