将dll添加到GAC(Global Assembly Cache)中
2013-05-07 09:51
405 查看
怎么样将一个dll加载到GAC中去咧?之前遇到过一个问题就是Oracle.DataAccess.dll的问题,本身机子上面安装了10G,但是后来知道11G中提供的Oracle.DataAccess.dll中包含一个新方法OracleBulkCopy,类似.net中专门用于Sql Server的SqlBulkCopy。那个时候是想直接拿那个dll拿来直接用的,可写了一个示例程序运行的时候却出现错误, 就是说dll要注册到GAC中去才行。那个郁闷啊,恨的心痒痒的。可能是我比较迟钝吧,后来才想到一个可能就是GAC里面的那个Oracle.DataAccess.dll版本和程序中引用的不一致导致的错误。
其实.net自带的就有一个工具可以将dll注册到GAC中去的,以前一直没关注过。gacutil.exe。开始菜单-Microsoft Visual Studio -Visual Studio Tools-Visual Studio 2008 命令提示,在控制台中输入 gacutil.exe 回车,既可以看到一些参数。
一般要安装dll到GAC中的话选择-i参数即可,后面跟上dll文件的完整路径。
例如:
gacutil.exe -i E:\ODP.NET\bin\2.x\Oracle.DataAccess.dll
这样的话这个dll就被注册到GAC里面去了,有一个不好的就是这个路径不能再改变了,比较好的一个替代方法就是将dll直接copy到C:\WINDOWS\assembly这个目录下,再去注册。
如果你想要知道一个注册到GAC的dll的一些信息的话,比如Version, Culture, PublicKeyToken等也可以使用gacutil.exe -l去查看。具体的一些其他使用看上面的图就知道了。
其实.net自带的就有一个工具可以将dll注册到GAC中去的,以前一直没关注过。gacutil.exe。开始菜单-Microsoft Visual Studio -Visual Studio Tools-Visual Studio 2008 命令提示,在控制台中输入 gacutil.exe 回车,既可以看到一些参数。
一般要安装dll到GAC中的话选择-i参数即可,后面跟上dll文件的完整路径。
例如:
gacutil.exe -i E:\ODP.NET\bin\2.x\Oracle.DataAccess.dll
这样的话这个dll就被注册到GAC里面去了,有一个不好的就是这个路径不能再改变了,比较好的一个替代方法就是将dll直接copy到C:\WINDOWS\assembly这个目录下,再去注册。
如果你想要知道一个注册到GAC的dll的一些信息的话,比如Version, Culture, PublicKeyToken等也可以使用gacutil.exe -l去查看。具体的一些其他使用看上面的图就知道了。
相关文章推荐
- 将dll添加到GAC(Global Assembly Cache)中
- GAC(Global Assembly Cache)注册/卸载 dll
- 全局程序集缓存(Global Assembly Cache, GAC)
- c# - GAC(Global Assembly Cache) Viewer
- GAC(Global Assembly Cache)
- 程序集(dll) 安装到 GAC 中的方法 && 程序集添加到 add refetence中的方法
- 程序集(dll) 安装到 GAC 中的方法 && 程序集添加到 add refetence中的方法
- 如何将程序集(.dll文件)添加到GAC(全局程序集缓存)?
- GAC(Global Assembly Cache)
- 将.NET dll注册到GAC(Global Assembly Cache)中
- 将.NET dll注册到GAC(Global Assembly Cache)中
- Content Deployment执行之前是否需要开启feature? 安装dll到GAC?
- ATL--创建简单的ATL之dll工程,添加“ATL简单对象”类的参数说明
- vc中添加动态链接库dll的步骤
- 总结: 如何将程序集(dll)安装到全局程序集缓存(GAC)中
- 【转】将程序集加入GAC,并让其能够在VS的添加引用的.NET选项卡中被引用
- .Net项目中添加DLL引用后无法编译的解决方案
- 如何将程序集(dll)安装到全局程序集缓存(GAC)中 收藏
- VC添加文件到工程出错问题--FileTool.dll
- C#工程添加了DLL编译运行时却提示”无法加载DLL“的解决方案