【问题标题】:Protecting dlls in setup and deployment (visual studio 2008)在设置和部署中保护 dll (visual studio 2008)
【发布时间】:2013-08-16 19:16:47
【问题描述】:

这可能是一个非常基本的问题,但我无法找到有关该主题的任何答案。我有一个项目,它引用了几个在 Visual Studio 2008 中编写的类库 dll。安装文件安装得非常好,并将 dll 放在适当的位置。然而,似乎任何一个 dll 都可以被安装了安装项目的任何人使用。例如,如果我有一个执行许多专有功能的 dll,我如何防止有人简单地获取已安装的 dll、在他们自己的项目中引用它并使用可用的功能?

我认为这很容易解决,但我是该主题的初学者。

【问题讨论】:

    标签: c# class dll shared-libraries


    【解决方案1】:

    可能唯一的方法是在可执行文件中包含当前在 DLL 中的所有函数,并将修饰符设置为私有。

    【讨论】:

      【解决方案2】:

      不,没有办法阻止这种情况(除了晦涩难懂 - 没有人知道您的 DLL 的 API 是如何使用的)。你所能做的就是给你的 API 函数起一个不起眼的名字。

      【讨论】:

        【解决方案3】:

        您可以做到这一点的一种方法是在您的 dll 中放置一些静态令牌,该令牌充当项目之间的私钥,如果未设置此密钥,则不会执行任何方法。此私有令牌将由您的入口点添加。不幸的是,这意味着您必须在每次公共方法调用时检查令牌。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-10-07
          • 1970-01-01
          • 2023-03-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多