【问题标题】:.Net assembly override the Assembly.GetExecutingAssembly().CodeBase/Location of an external assembly.Net 程序集覆盖外部程序集的 Assembly.GetExecutingAssembly().CodeBase/Location
【发布时间】:2015-02-18 02:32:22
【问题描述】:

我在项目设置中有一个对外部程序集 DLL 的引用(比如我将它复制到 c:\project\abc.dll 中)。当我从该程序集中调用导出的方法时,出现运行时错误。因为它正在寻找 c:\ABC 中的文件 abc.ini,而 .exe 错误消息说它在 c:\project 中找不到 abc.ini

程序集似乎正在寻找由 Assembly.GetExecutingAssembly().CodeBase 或 Assembly.GetExecutingAssembly().Location 返回的文件夹,用于 abc.ini。

如何仅“欺骗”他的装配位置在 c:\ABC 的装配?

【问题讨论】:

  • 没有合理的方法可以更改GetExecutingAssembly.CodeBaseLocation。如果您没有相关程序集的源代码,您唯一的解决方案是将程序集复制到 c:\ABC。
  • 看来是这样。谢谢吉姆。请把它作为一个答案,然后我会接受它。

标签: c# .net app-config .net-assembly


【解决方案1】:

没有合理的方法可以更改GetExecutingAssembly.CodeBaseLocation。如果您没有相关程序集的源代码,您唯一的解决方案是将程序集复制到 c:\ABC

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-23
    • 1970-01-01
    • 2015-02-17
    • 1970-01-01
    • 1970-01-01
    • 2015-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多