2

LicFileLicenseProviderベースのライセンス プロバイダーを作成します。このコンテンツに関する多くの記事、質問、回答を読みました。最後に、ライセンス プロバイダーを作成しましたMyLicFileLicenseProvider。これには、RunTime と DesignTime の 2 つのモードがあります。設計時のみのライセンスを設定します。私はそれをやりましたが、それもうまく機能しています。したがって、ライセンスは、「licenses.licx」ファイルが存在するコンパイル中にのみ使用されます (使用する必要があります)。

A. 通常の場合

1) クラスを作成します。

[LicenseProvider(typeof(MyLicFileLicenseProvider))]

public class XXXObject

{

        private License license = null;
        /// <summary>
        /// Creates an instance of the XXXObject object.
        /// </summary>
        public XXXObject()
        {
            try
            {
                license = LicenseManager.Validate(typeof(XXXObject), this);
            }
            catch (Exception ex)
            {
                throw new SecurityException("Invalid license!");
            }               
        }
}

2) 次に、licenses.licx ファイル、コンテンツ オブジェクトのフル ネーム、名前空間、バージョン、カルチャ、PublicKeyToken を作成します。

3) ライセンス ファイル、XXX.XXXObject.lic ファイルを作成します。

これで、必要なものをすべて作成し、プロジェクトをコンパイルしました。それはコンパイルされ、うまく機能しています。

B. Bi-normal ケース。私の質問は、上記で述べたように、属性で XXXObject クラスを装飾したことです[LicenseProvider(typeof(MyLicFileLicenseProvider))]。次に、licenses.licx ファイルをプロジェクトから除外します。次に、プロジェクトをコンパイルしました。ただし、まだコンパイル中です。[LicenseProvider(typeof(MyLicFileLicenseProvider))] でクラスを装飾したため、これは意味がありません。licenses.licx を探す必要がありますが、そうではなく、エラーなしでコンパイルされましたか?

4

0 に答える 0