【问题标题】:DLL conflict - trial version vs purchasedDLL 冲突 - 试用版与购买
【发布时间】:2015-07-13 23:55:08
【问题描述】:

我在我的 .NET 应用程序中使用了第三方 dll(ABCpdf),并将该应用程序安装到另一台机器上。该程序运行良好,但试用期到期,我们购买了第三方组件并将新的 dll 复制到应用程序目录中。运行我的应用程序时,出现无法加载程序集的错误。我注意到对 dll 的引用已将本地复制设置为 false,因此我将其更改为 true。仍然得到同样的错误。

我检查了机器上有许多dll的副本-一个在已安装的第三方应用程序的文件夹中,一个在我的应用程序的应用程序文件夹中(从安装文件夹中复制),还有一个在GAC中.我确实将 copy local 设置为 true 但是,一旦程序集安装在 GAC 中,这就是将始终使用的版本。

我该如何解决这个问题?从 GAC 中删除 dll 是否安全?它会解决我的问题吗?请指教

【问题讨论】:

    标签: vb.net dll abcpdf


    【解决方案1】:

    检查使用的参考文献等。 首先确保您使用正确的版本进行编译,并安装了许可证。 您可以使用此代码在运行时添加许可证密钥(以避免将来在您的客户中出现错误):

    WebSupergoo.ABCpdf7.XSettings.InstallRedistributionLicense("your_serial")
    

    AbcPDF 不需要安装在 GAC 上。所以你可以从那里删除它。 然后,检查 32/64 位问题,因为 ABCpdf 使用提供 4 个 dll,每个平台 2 个(ABCPDF.dll 和 ABCPdfCEXX.dll)。

    【讨论】:

      【解决方案2】:

      尝试删除项目引用中的 DLL 引用,然后读取它。确保您添加的是应用程序目录中购买的 DLL。在与第三方 DLL 打架之前,我不得不这样做很多次......它通常可以工作。

      【讨论】:

        猜你喜欢
        • 2017-02-09
        • 2012-05-30
        • 1970-01-01
        • 2017-06-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多