mcpField
S
syncfusion-wpf-licensing

syncfusion-wpf-licensing

github.com/syncfusion開発5170 回インストール2 週間前に更新
リポジトリ

syncfusion-wpf-licensing について

Syncfusion 開発者向けに、複数プラットフォームでのライセンスキー生成、登録、トラブルシューティングを扱うガイドです。キーの安全な管理と CI/CD 検証についても説明します。

主な機能

  1. 01プラットフォーム・バージョン別キーの生成
  2. 02各種アプリへのキー登録
  3. 03一般的なライセンスエラーの調査
  4. 04CI/CD でのライセンス検証
  5. 05キーの安全な保管

活用シーン

  1. 01Syncfusion NuGet パッケージや試用インストーラーの設定
  2. 02プラットフォームやバージョンの不一致エラーの解決
  3. 03ビルドサーバーでのライセンス検証設定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-licensing

インストール後、Claude Code で/syncfusion-wpf-licensingを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
ci-license-validation.md
generating-license-keys.md
licensing-errors.md
overview-and-differences.md
registering-license-keys.md
SECURITY_ANALYSIS.md
upgrading-and-account-setup.md

詳細

Syncfusion ライセンスの実装

すべてのプラットフォーム(WPF、Blazor、React、MAUI、Angular、Vue、ASP.NET Core など)で Syncfusion ライセンスキーを生成、登録、トラブルシューティングするための包括的なガイドです。

概要

バージョン 16.2.0.x 以降、Syncfusion は次の対象に適用されるライセンスシステムを導入しました。

  • トライアルインストーラーを使用するすべての評価ユーザー
  • nuget.org から NuGet パッケージを使用する有料のお客様

評価版インストーラーまたは NuGet パッケージを使用する場合、ライセンス検証メッセージを回避するため、アプリケーションに有効なライセンスキーを登録する必要があります。

重要なポイント:

  • ライセンスキーはバージョンおよびプラットフォームごとに異なります
  • 登録はオフラインで行われます(インターネット接続は不要です)
  • インストーラーのロック解除キーとは異なります
  • nuget.org の NuGet パッケージとトライアルインストーラーでは必須です
  • ライセンス付きインストーラー(ライセンス付きインストールから取得したアセンブリ)では不要です

このスキルを使用するタイミング

ユーザーが次のことを必要としている場合は、すぐにこのスキルを使用します。

  • Syncfusion コンポーネントのライセンスキーを生成する
  • アプリケーション(WPF、Blazor、React など)にライセンスキーを登録する
  • ライセンスエラーのトラブルシューティングを行う(トライアルの期限切れ、無効なキー、プラットフォーム/バージョンの不一致)
  • CI/CD のライセンス検証を設定する(Azure Pipelines、GitHub Actions、Jenkins)
  • トライアル版からライセンス版にアップグレードする
  • ライセンスキーとロック解除キーの違いを理解する
  • ビルドサーバーのライセンスを設定する
  • 「ライセンス検証メッセージ」エラーを解決する
  • NuGet.org ユーザー向けに Syncfusion アカウントを登録する
  • ValidateLicense() メソッドを使用して、プログラムからライセンスを検証する

ライセンスの種類を理解する

ライセンス登録が必要な場合
Syncfusion の提供元ライセンス登録が必要ですか?備考
NuGet パッケージ(nuget.org)✅ はいバージョンおよびプラットフォームごとのキーが必要です
トライアルインストーラー✅ はい無料の 30 日間トライアルキーが必要です
ライセンス付きインストーラー❌ いいえ登録は不要です
ライセンスキーとロック解除キー
  • ライセンスキー:SyncfusionLicenseProvider.RegisterLicense() を使用してアプリケーションコードに登録します
  • ロック解除キー:Syncfusion インストーラーのロック解除に使用します(旧システム)
  • この 2 つは異なるキーであり、目的も異なります

ドキュメントとナビゲーションガイド

ライセンスの使用開始

📄 参照: references/overview-and-differences.md

  • ライセンスシステムの概要
  • ライセンスキーとロック解除キーの違い
  • ライセンスキーが必要な場合(NuGet、トライアル、ライセンス付きインストーラー)
  • ビルドサーバーのライセンス要件
  • プラットフォームおよびバージョンごとの違い
  • ビルド環境でのキーの登録
ライセンスキーの生成

📄 参照: references/generating-license-keys.md

  • キーの生成場所(License & Downloads、Trial & Downloads)
  • 「Claim License Key」機能の使用
  • 有効なライセンスと有効なトライアルの取り扱い
  • 期限切れのライセンスへの対応(一時的な 5 日間キー)
  • プラットフォームとバージョンの選択方法
ライセンスキーの登録

📄 参照: references/registering-license-keys.md

  • プラットフォームごとの登録コードの配置場所
  • WPF:App.xaml.cs コンストラクターでの登録(C# および VB)
  • Blazor、React、Angular、Vue、MAUI の登録パターン
  • Syncfusion.Licensing.dll の要件
  • オフライン検証機能
  • 登録コードの例
ライセンスエラーのトラブルシューティング

📄 参照: references/licensing-errors.md

  • 「ライセンスキーが登録されていません」エラー
  • 「無効なキー」エラー
  • 「トライアルの期限切れ」エラー
  • 「プラットフォームの不一致」エラー
  • 「バージョンの不一致」エラー
  • 「Syncfusion.Licensing.dll を読み込めませんでした」エラー
  • 各エラーの解決策
  • アセンブリの Copy Local 設定
  • バージョン別のエラーメッセージ(16.2.0+ と 20.3.0+)
CI/CD ライセンス検証

📄 参照: references/ci-license-validation.md

  • CI/CD 検証ガイダンス(プログラムによる検証、単体テストによる検証、または内部ホスト型の成果物)。パイプラインで未検証の外部バイナリをダウンロードまたは実行しないでください。
  • Azure Pipelines(YAML および Classic)との統合
  • GitHub Actions との統合
  • Jenkins パイプラインとの統合
  • プログラムによる検証のための ValidateLicense() メソッド
  • 単体テストプロジェクトによる検証方法
  • デプロイ時のライセンスエラーの防止
アップグレードとアカウントの設定

📄 参照: references/upgrading-and-account-setup.md

  • ライセンス購入後の試用版からのアップグレード
  • アンインストールと再インストールの手順
  • 試用版キーから有料ライセンスキーへの置き換え
  • NuGet.org ユーザー向け Syncfusion アカウントの登録
  • 30 日間の無料試用の開始
  • インターネット接続の要件(オフライン検証が可能)

クイックスタートの例

⚠️ セキュリティ警告

ライセンスキーをコードにハードコードしないでください。 ライセンスキーは秘密情報であり、安全に保管する必要があります。認証情報を安全に扱う方法については、SECURITY_ANALYSIS.md ドキュメントをご覧ください。

WPF アプリケーション(環境変数で安全に設定)
// In App.xaml.cs
using Syncfusion.Licensing;

public partial class App : Application
{
    public App()
    {
        // SECURE: Read from environment variable
        string licenseKey = Environment.GetEnvironmentVariable("SYNCFUSION_LICENSE_KEY")
            ?? throw new InvalidOperationException(
                "SYNCFUSION_LICENSE_KEY environment variable not set");
        
        // Register Syncfusion license key BEFORE initializing any components
        SyncfusionLicenseProvider.RegisterLicense(licenseKey);
        
        InitializeComponent();
    }
}

実行前に環境変数を設定してください:

# Windows Command Prompt
setx SYNCFUSION_LICENSE_KEY "your_actual_license_key"

# Windows PowerShell
$env:SYNCFUSION_LICENSE_KEY = "your_actual_license_key"
Blazor Server(構成で安全に設定)
// In Program.cs
using Syncfusion.Licensing;

var builder = WebApplication.CreateBuilder(args);

// SECURE: Read from configuration (loaded from environment variables or appsettings.json)
var licenseKey = builder.Configuration["Syncfusion:LicenseKey"]
    ?? throw new InvalidOperationException(
        "Syncfusion:LicenseKey not configured. " +
        "Set SYNCFUSION_LICENSE_KEY environment variable or add to appsettings.json");

// Register license key at application startup
SyncfusionLicenseProvider.RegisterLicense(licenseKey);

// ... rest of your configuration

環境の設定:

# Set environment variable
set SYNCFUSION_LICENSE_KEY=your_license_key

# Or use user secrets in development
dotnet user-secrets set "Syncfusion:LicenseKey" "your_license_key"
React/Angular/Vue(環境変数で安全に設定)
// In your main entry point (e.g., index.js, main.ts)
import { registerLicense } from '@syncfusion/ej2-base';

// SECURE: Read from environment variable (via process.env or import.meta.env)
const licenseKey = process.env.REACT_APP_SYNCFUSION_LICENSE_KEY;

if (!licenseKey) {
    console.error('REACT_APP_SYNCFUSION_LICENSE_KEY environment variable not set');
    throw new Error('License key not configured');
}

// Register license key before rendering components
registerLicense(licenseKey);

環境の設定(.env ファイル):

REACT_APP_SYNCFUSION_LICENSE_KEY=your_actual_license_key

重要: キーを誤ってコミットしないよう、.env と .env.local を .gitignore に追加してください。

よくあるライセンスのシナリオ

シナリオ 1:試用ユーザーの設定
  1. Syncfusion の無料アカウントに登録します
  2. アカウントポータルから 30 日間の試用を開始します
  3. Trial & Downloads セクションから試用版ライセンスキーを生成します
  4. RegisterLicense() を使用して、アプリケーションにキーを登録します
  5. 試用版キーは 30 日後に有効期限が切れます
シナリオ 2:ライセンス所有ユーザーの設定
  1. Syncfusion アカウントにログインします
  2. License & Downloads セクションに移動します
  3. 使用するバージョンとプラットフォームに対応するライセンスキーを生成します
  4. RegisterLicense() を使用して、アプリケーションにキーを登録します
  5. キーは指定されたバージョンとプラットフォームで有効です
シナリオ 3:NuGet.org ユーザーの設定
  1. nuget.org の Syncfusion パッケージを使用するには、ライセンス登録が必要です
  2. Syncfusion アカウントをお持ちでない場合は、登録します
  3. 試用を開始するか、ライセンスを購入します
  4. ライセンスキーを生成して登録します
  5. 登録しないと、ライセンス検証の警告が表示されます
シナリオ 4:ビルドサーバー/CI/CD
  1. NuGet パッケージを使用するビルドサーバーでは、ライセンス登録が必要です
  2. ビルド環境用のキーを生成するには、任意の開発者ライセンスを使用します
  3. アプリケーションコードにキーを登録します
  4. 必要に応じて CI ライセンス検証を設定し、エラーを早期に検出します
  5. ビルド中にインターネット接続は不要です(オフライン検証)
シナリオ 5:試用版からのアップグレード
  1. Syncfusion ライセンスを購入します
  2. オプション A:試用版インストーラーをアンインストールし、License & Downloads からライセンス版をインストールします
  3. オプション B:NuGet を使用している場合は、有料ライセンスキーを生成して試用版キーと置き換えます
  4. ライセンス版インストーラーのアセンブリでは、キー登録は不要です
  5. NuGet パッケージでは、常にキー登録が必要です

主な概念

プラットフォームとバージョンの指定
  • ライセンスキーはバージョン固有です:v26.1.35 用のキーは v26.2.4 では使用できません
  • ライセンスキーはプラットフォーム固有です:WPF 用のキーは Blazor では使用できません
  • プラットフォームとバージョンの組み合わせごとに、別々のキーを生成します
  • RegisterLicense() の呼び出しでは、正しいバージョンを使用します
オフライン検証
  • アプリケーションの実行中、ライセンス検証はオフラインで行われます
  • アプリケーションの実行にインターネット接続は不要です
  • 外部ネットワークから隔離されたシステムにもデプロイできます
  • 検証はアプリケーションの起動時に行われます
ビルドサーバー
  • NuGet パッケージを使用するビルドサーバーでは、ライセンス登録が必要です
  • CI/CD 用のキーを生成するには、任意の開発者ライセンスを使用します
  • ビルドサーバー上のライセンス済みインストーラーアセンブリには、キーは不要です
  • デプロイエラーを防ぐため、CI 検証を設定します
Syncfusion.Licensing.dll
  • ライセンス登録に必要なアセンブリです
  • RegisterLicense() を使用するプロジェクトで参照されていることを確認します
  • 出力に含めるには、「Copy Local」を true に設定します
  • NuGet 経由で入手できます:Syncfusion.Licensing

登録のベストプラクティス

  1. 早めに登録する:Syncfusion コンポーネントを初期化する前に RegisterLicense() を呼び出します
  2. アプリごとに1回登録する:起動時に1回登録するだけで十分です
  3. 安全なストレージを使用する:✅ 環境変数、✅ 構成ファイル、✅ シークレットマネージャー(Azure Key Vault、AWS Secrets Manager) | ❌ 文字列リテラルをハードコードしないでください
  4. バージョンを一致させる:すべての Syncfusion パッケージで同じバージョンを使用します
  5. キーをハードコードしない:環境変数または安全な構成システムにキーを保存します
  6. .gitignore を使用する:シークレットを含む構成ファイルをバージョン管理から除外します
  7. CI/CD 検証:外部ツールのダウンロードではなく、プログラムによる検証方法を使用します
  8. キーを定期的にローテーションする:ライセンスキーを定期的に更新し、古いキーを失効させます
  9. アクセスを監査する:すべてのライセンスキーへのアクセスと使用状況を監視、記録します

⚠️ セキュリティ警告: 認証情報の安全な取り扱いと CI/CD 検証パターンの詳細については、SECURITY_ANALYSIS.md を参照してください。

エラー防止チェックリスト

アプリケーションをデプロイする前に、以下を確認してください。

  • 正しいバージョンとプラットフォーム用のライセンスキーが生成されている
  • Syncfusion コンポーネントを初期化する前に RegisterLicense() が呼び出されている
  • すべての Syncfusion NuGet パッケージで同じバージョンが使用されている
  • Syncfusion.Licensing.dll が参照され、「Copy Local」= true に設定されている
  • ライセンスキーが使用中の Syncfusion パッケージのバージョンと一致している
  • CI/CD の場合:ビルドパイプラインでライセンス検証が設定されている
  • ライセンスキーが安全に保存されている(公開リポジトリにハードコードされていない)

関連スキル

コメント