IronPrint 许可证配置故障排除

This article was translated from English: Does it need improvement?
Translated
View the article in English

该问题已在 IronPrint 2024.3.6 版本中得到解决

# This shell output shows an unhandled exception error due to missing license for IronPrint.
Exception: Unhandled exception. IronSoftware.Exceptions.LicensingException: IronPrint must be licensed for development.
# This shell output shows an unhandled exception error due to missing license for IronPrint.
Exception: Unhandled exception. IronSoftware.Exceptions.LicensingException: IronPrint must be licensed for development.
SHELL

对于较早版本的 IronPrint(特别是 2024.3.6 版之前的版本),存在已知的许可问题:

  • ASP.NET 项目
  • .NET Framework 版本 >= 4.6.2

存储在 Web.co/nfig 文件中的密钥将不会被产品读取和使用。

解决方法

为解决此问题,建议在代码中使用 ConfigurationManagerWeb.co/nfig 文件中获取许可证密钥,然后将其应用到 License.LicenseKey 属性上。

示例:

<configuration>
  ...
  <appSettings>
    <add key="IronPrint.LicenseKey" value="IRONPRINT.MYLICENSE.KEY.1EF01"/>
  </appSettings>
  ...
</configuration>
<configuration>
  ...
  <appSettings>
    <add key="IronPrint.LicenseKey" value="IRONPRINT.MYLICENSE.KEY.1EF01"/>
  </appSettings>
  ...
</configuration>
XML

利用上文提供的 XML 文件,我们可以使用 ConfigurationManager 检索许可证密钥值,并将其传递给 IronPrint.License.LicenseKey 属性。

using System;
using System.Co/nfiguration;

namespace IronPrintLicenseSetup
{
    class Program
    {
        static void Main()
        {
            // Retrieve the license key from the appSettings section of the Web.co/nfig file.
            string licenseKey = ConfigurationManager.AppSettings["IronPrint.LicenseKey"];

            // Apply the retrieved license key to the IronPrint's LicenseKey property.
            IronPrint.License.LicenseKey = licenseKey;

            // Notify user that the license key has been applied.
            Console.WriteLine("License Key has been applied successfully.");
        }
    }
}
using System;
using System.Co/nfiguration;

namespace IronPrintLicenseSetup
{
    class Program
    {
        static void Main()
        {
            // Retrieve the license key from the appSettings section of the Web.co/nfig file.
            string licenseKey = ConfigurationManager.AppSettings["IronPrint.LicenseKey"];

            // Apply the retrieved license key to the IronPrint's LicenseKey property.
            IronPrint.License.LicenseKey = licenseKey;

            // Notify user that the license key has been applied.
            Console.WriteLine("License Key has been applied successfully.");
        }
    }
}
Imports System
Imports System.Configuration

Namespace IronPrintLicenseSetup
    Class Program
        Shared Sub Main()
            ' Retrieve the license key from the appSettings section of the Web.config file.
            Dim licenseKey As String = ConfigurationManager.AppSettings("IronPrint.LicenseKey")

            ' Apply the retrieved license key to the IronPrint's LicenseKey property.
            IronPrint.License.LicenseKey = licenseKey

            ' Notify user that the license key has been applied.
            Console.WriteLine("License Key has been applied successfully.")
        End Sub
    End Class
End Namespace
$vbLabelText   $csharpLabel

在上例中,ConfigurationManager.AppSettings 用于直接从 Web.co/nfig 获取许可证密钥。 随后将 IronPrint 组件的密钥设置为 LicenseKey,以确保应用程序拥有正常运行所需的许可证。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

准备开始了吗?
Nuget 下载 41,154 | 版本: 2026.5 just released
Still Scrolling Icon

还在滚动吗?

想快速获得证据? PM > Install-Package IronPrint
运行示例 观看您的文档打到打印机上。