【问题标题】:How can I hide (dll) references from a dll project in .NET? [duplicate]如何在 .NET 中隐藏 dll 项目的(dll)引用? [复制]
【发布时间】:2016-11-05 13:09:34
【问题描述】:

我尝试使用一个服务器,它为我提供了一个 DLL,我可以用它来制作游戏服务器代码(在一个 dll 项目中),上传它并让他们为我托管游戏,但这是我的问题: 我在制作游戏服务器代码时使用了一个额外的 dll 引用(除了他们的 dll 引用),当我尝试上传它时,它说我只能使用 他们的 dll。所以我的问题是,如何隐藏我使用的额外参考?

编辑:我会尝试合并它或其他东西。如果它不起作用,那就是它。问题关闭。谢谢!

【问题讨论】:

  • 如果您隐藏它,(如果可以的话)它不会被加载,这可能会使您的代码无用。
  • 我能想到的最接近的是stackoverflow.com/questions/8077570/…。但是否是你需要的很难说。
  • 所以没有办法“隐藏”它并仍然使用它?我只需要绕过他们的检查。编辑:Eugene Podskal:这可能行得通。我马上试试。
  • 不,您可以尝试@EugenePodskal 提供的ILMerge 路由,但它非常脆弱,无法支持所有内容,您只能在运行时发现。
  • 他们的 dll 是用 .net 编写的,然后下载 JetBrains .net Peek 之类的东西并尝试反编译它,看看他们的 Edit 函数在做什么

标签: c# dll reference server hide


【解决方案1】:

如果他们的服务要求您只使用他们的 DLL。当他们说只使用他们的DLL时,他们是认真的。他们这样做可能是为了避免某种形式的并发症。我唯一能想到的就是将 DLL 与 mkbundle 结合在一起。

mkbundle -o Name.dll targetOne.dll targetTwo.dll 

这将在 Name.dll 内创建 DLL 的静态副本。但是我确信他们会有一个系统来检查这个。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-26
    • 2018-11-02
    相关资源
    最近更新 更多