• 将dll添加到GAC(Global Assembly Cache)中


    怎么样将一个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 回车,既可以看到一些参数。

    image

    一般要安装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去查看。具体的一些其他使用看上面的图就知道了。

    嘿嘿,以后可以随便网GAC里面注册dll了咧。省去不少麻烦啊。

    希望对各位有用,没用也就当自己做过备忘吧,

  • 相关阅读:
    Audit(二)--清理Audit数据
    开启和关闭oracle数据库中的审计功能
    ORACLE AUDIT
    expdp导出卡住问题诊断
    Oracle 12c 新特性 --- 新增对数据泵操作的审计跟踪
    针对Oracle的审计方案
    深入理解Oracle的imp/exp 和各版本之间的规则
    Oracle Audit 功能的使用和说明
    Oracle的存储的三大物理文件
    操作系统核心原理-5.内存管理(下):段式内存管理
  • 原文地址:https://www.cnblogs.com/bluesky4485/p/1701744.html
Copyright © 2020-2023  润新知