LicenseManager クラス
アセンブリ: System (system.dll 内)
構文
解説
LicenseManager クラスでは、static プロパティ (CurrentContext と UsageMode) が提供されます。また、このクラスでは、static メソッド (CreateWithContext、IsValid、および Validate) も提供されます。
ライセンスを与える対象となるコンポーネントを作成する場合は、次の処理を行う必要があります。
-
LicenseProviderAttribute を使用してコンポーネントをマークすることによって、LicenseProvider を指定します。
-
コンポーネントのコンストラクタで Validate または IsValid を呼び出します。有効なライセンスがないのにインスタンスを作成しようとすると、Validate は LicenseException をスローします。IsValid は例外をスローしません。
ライセンスの詳細については、「方法 : コンポーネントおよびコントロールのライセンス処理を行う」を参照してください。
メモ |
---|
このクラスに適用される HostProtectionAttribute 属性の Resources プロパティの値は、ExternalProcessMgmt です。HostProtectionAttribute は、デスクトップ アプリケーション (一般的には、アイコンをダブルクリック、コマンドを入力、またはブラウザに URL を入力して起動するアプリケーション) には影響しません。詳細については、HostProtectionAttribute クラスのトピックまたは「SQL Server プログラミングとホスト保護属性」を参照してください。 |
Validate メソッドを使用して、複数のライセンス コントロールを作成するコード例を次に示します。このコード例では、LicFileLicenseProvider クラスで実装される LicenseProvider が使用されます。
Imports System Imports System.ComponentModel Imports System.Windows.Forms ' Adds the LicenseProviderAttribute to the control. <LicenseProvider(GetType(LicFileLicenseProvider))> _ Public Class MyControl Inherits Control ' Creates a new, null license. Private license As License = Nothing Public Sub New() ' Adds Validate to the control's constructor. license = LicenseManager.Validate(GetType(MyControl), Me) ' Insert code to perform other instance creation tasks here. End Sub Protected Overrides Sub Dispose(ByVal disposing As Boolean) If disposing Then If Not (license Is Nothing) Then license.Dispose() license = Nothing End If End If End Sub End Class
using System; using System.ComponentModel; using System.Windows.Forms; // Adds the LicenseProviderAttribute to the control. [LicenseProvider(typeof(LicFileLicenseProvider))] public class MyControl : Control { // Creates a new, null license. private License license = null; public MyControl () { // Adds Validate to the control's constructor. license = LicenseManager.Validate(typeof(MyControl), this); // Insert code to perform other instance creation tasks here. } protected override void Dispose(bool disposing) { if(disposing) { if (license != null) { license.Dispose(); license = null; } } } }
// Adds the LicenseProviderAttribute to the control. [LicenseProvider(LicFileLicenseProvider::typeid)] public ref class MyControl: public Control { // Creates a new, null license. private: License^ license; public: MyControl() { // Adds Validate to the control's constructor. license = LicenseManager::Validate( MyControl::typeid, this ); // Insert code to perform other instance creation tasks here. } public: ~MyControl() { if ( license != nullptr ) { delete license; license = nullptr; } } };
import System.*; import System.ComponentModel.*; import System.Windows.Forms.*; // Adds the LicenseProviderAttribute to the control. /** @attribute LicenseProvider(LicFileLicenseProvider.class) */ public class MyControl extends Control { // Creates a new, null license. private License license = null; public MyControl() { // Adds Validate to the control's constructor. license = LicenseManager.Validate(MyControl.class.ToType(), this); // Insert code to perform other instance creation tasks here. } protected void Dispose(boolean disposing) { if (disposing) { if (license != null) { license.Dispose(); license = null; } } } }
System.ComponentModel.LicenseManager
プラットフォーム
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
- LicenseManager クラスのページへのリンク