【转】如何将GAC中的DLL复制出来

如何将GAC中的DLL复制出来,在项目中我们常常会引入第三方的dll,一般情况下我们都可以将所需的dll文件复制到硬盘上的一个地方,在项目中添加引用,这个操作很简单!

      但有时候我们会遇到这样的情况,就是所要引用的dll在目标机器的GAC里,这时我们就不能手动将它拷贝出来了。

      其实Windows的GAC是有对应的目录的,一般来说为c:\Windows\assembly\,这个目录有一些特殊,它里面存放的是本机已安装和注册的类库dll,并且不允许用户直接对其中的元素进行相关操作(如复制、剪切、粘贴、修改名称等),不过你可以直接将另一位置的dll文件直接拖放到这个目录下进行dll的安装,但是我们不能直接将已经安装进去的dll再拷贝出来。这里我将介绍一种方法来完成这个操作。

首先我们切换到Windows的命令行方式,即开始-运行-cmd-回车,然后转到GAC所在的目录,利用dir命令查看一下其中的内容,如下图。

似乎可以明白GAC中的目录结构了,基本上我们可以根据GAC目录中的Processor Architecture列来区分dir的类型,例如我们要找的System.Web.Extensions属于MSIL,在CMD方式下它应该就对应GAC_MSIL,然后切换到这个目录下并dir。

看到我们要找的System.Web.Extensions程序集了,它也是一个dir,继续切进去并dir。

这时只有一个目录了,继续切进去,然后dir就可以看到我们最终想要的dll文件了,然后通过copy命令将它复制出来就OK了!

cmd : copy System.web.Extensions.dll d:\

      小技巧:在CMD方式下使用命令时,如果要输入的文件名或目录名太长,可以先敲部分字符,然后通过Tab键自动补全,Windows的command工具会自动为你找到相匹配的内容!

原文地址:http://apps.hi.baidu.com/share/detail/25002661

posted @ 2011-07-04 14:47  meteorcui  阅读(293)  评论(0编辑  收藏  举报