Skip to content

应用许可证密钥

ComPDFKit PDF SDK 是一个商业 SDK,需要许可证才能授权开发者开发或发布其应用程序。在开发模式下,每个许可证都绑定着唯一的设备ID。ComPDFKit 拥有灵活的授权模式,请联系我们的销售团队了解更多信息。请注意,即使拥有了许可证,也禁止将 ComPDFKit 的任何文件、示例代码或源代码给任何第三方。

ComPDFKit PDF SDK 目前支持在线认证和离线认证两种验证方式:在线许可证与离线许可证。

在线许可证: 在线许可证支持动态更新许可证信息。如果我们向您提供了新的服务,您可以实时获取更新内容,而无需进行任何修改。

离线许可证: 离线许可证适用于高安全要求和网络受限制的场景,允许您在无法连接到互联网的情况下使用 ComPDFKit PDF SDK。

获取许可证密钥

若要将 ComPDFKit 许可证用于应用,我们的许可证有两种,一种为试用许可证,一种为正式许可证。其中正式许可证必须绑定到您的开发者设备 ID(如何查找开发者设备 ID)。

  1. 通过在ComPDFKit官网填写联系销售页面的需求表格与销售团队建立联系。
  2. 收到您提交的需求后,我们的销售团队将在24小时内与您联系,并明确您的需求。
  3. 在确认需求内容无误后,您将获得相应的免费试用许可证,有效期为30天,这期间您遇到的任何使用问题,我们都提供免费的技术支持。
  4. 对产品满意后,您可选择购买正式许可证,交易完成后,我们的销售团队会以邮件的形式发送正式的许可证给您。

复制许可证密钥

正确获取许可证密钥,是许可证应用的关键。

  1. 在您收到的邮件中,找到包含许可证密钥的XML文件

  2. 打开 XML 文件,通过 <type> 字段判断许可证类型,如果是 <type>online</type> 则为在线许可证, <type>offline</type> 或无该字段则为离线许可证。

在线许可证:

xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<license version="1">
    <platform>xxxxxx</platform>
    <starttime>xxxxxxxx</starttime>
    <endtime>xxxxxxxx</endtime>
    <type>online</type>
    <key>LICENSE_KEY</key>
</license>

离线许可证:

xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<license version="1">
    <platform>xxxxxx</platform>
    <starttime>xxxxxxxx</starttime>
    <endtime>xxxxxxxx</endtime>
    <key>LICENSE_KEY</key>
</license>
  1. 复制<key>LICENSE_KEY</key>字段中的LICENSE_KEY位置的值,这就是您的许可证密钥。

应用许可证密钥

在使用任何 ComPDFKit PDF SDK 类之前,您需要根据许可证类型不同,在以下两组方案中选择对应的方案,将许可证应用到您的程序中。

在线认证

您可以通过以下方式进行在线认证:

C#
public static bool LicenseVerify()
{
	if (!CPDFSDKVerifier.LoadNativeLibrary())
	{ 
		return false;
	}
	LicenseErrorCode status = CPDFSDKVerifier.OnlineLicenseVerify("Input your license here.");
	return status == LicenseErrorCode.E_LICENSE_SUCCESS;
}

此外,如果您需要确认当前在线认证时与服务器的通信状态,可以通过实现CPDFSDKVerifier.LicenseRefreshed回调:

C#
CPDFSDKVerifier.LicenseRefreshed += CPDFSDKVerifier_LicenseRefreshed;

private void CPDFSDKVerifier_LicenseRefreshed(object sender, ResponseModel e)
{
	if(e != null)
	{
		string message = string.Format("{0} {1}", e.Code, e.Message);
		Trace.WriteLine(message);
	}
	else
    {
    	Trace.WriteLine("Network not connected."); 
    } 
}