GrapeCity PlusPak for Windows Forms 10.0J
ライセンスの組み込み

作成するアプリケーションに、本製品のライセンスを組み込む方法について説明します。

licenses.licx ファイルの組み込み
設計時にコントロールをフォームに貼り付けるとlicenses.licx ファイルが自動的に作成され、プロジェクトに組み込まれます。しかし、実行時にコントロールを生成する場合や .NET Coreプロジェクトで使用する場合は、Licenses.licx ファイルは作成されません。

この場合は、該当するすべてのコントロールの情報を含んだlicenses.licx ファイルを作成し、プロジェクトに組み込む必要があります。プロジェクトにlicenses.licx ファイルが組み込まれていない場合は、実行時にコントロールが生成されたときに、ライセンスのエラーを示すダイアログが表示されます。

licenses.licx ファイルの作成とプロジェクトへの組み込みは、以下の手順で行います。
  1. Visual Studio で新しいプロジェクトを開きます。

  2. PlusPak の次のコンポーネントを参照設定します。

    コンポーネント名 バージョン
    GrapeCity.Win.PlusPak 10.0.40xx.2012
    GrapeCity.Win.PlusPak.Calendar(使用する場合のみ) 10.0.40xx.2012
    GrapeCity.Win.FunctionKey(使用する場合のみ) 10.0.40xx.2012
    GrapeCity.Win.PlusPak.PDF(使用する場合のみ) 10.0.40xx.2012
    GrapeCity.Framework.PlusPak 2.4.40xx.2012

    40xx.2012は、製品アセンブリバージョンによって変わります。アセンブリバージョンについては、「PlusPak の概要 - アセンブリ」項目をご覧ください。

    .NET Coreプロジェクトで使用する場合は、プロジェクトの参照設定に追加するのではなく、NuGetパッケージをインストールします。詳細は「プロジェクトの作成とアセンブリ参照の追加」をご参照ください。

  3. Visual Basic のプロジェクトの場合は「My Project」フォルダ、C#のプロジェクトの場合は「Properties」フォルダの下に、ファイル名を「Licenses.licx」とした空のテキストファイルを作成します。

    .NET Coreプロジェクトで使用する場合は、プロジェクト配下の任意の場所に licenses.licxファイルを追加します。

  4. 作成した「licenses.licx」ファイルを開き、以下の文字列から該当するコントロールに関するものを選んで、licenses.licx に入力します。

    <レイアウト>
    GrapeCity.Win.Containers.GcAccordionItem, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcAccordionContainer, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Components.GcApplicationResize, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcComboFrame, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcContainer, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcFlowLayoutContainer, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcHeadingContainer, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcMdiTabControl, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Components.GcResize, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcResizePanel, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcTabControl, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcTabPage, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcTableLayoutContainer, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    <UIコントロール>
    GrapeCity.Win.Buttons.GcButton, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Calendar.GcCalendar, GrapeCity.Win.PlusPak.Calendar.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Calculations.GcCalculator, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Buttons.GcCheckBox, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcCheckedGroupBox, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Bars.GcClassicFunctionKey, GrapeCity.Win.FunctionKey.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=aa208f7e417ecbb3
    GrapeCity.Win.Pickers.GcColorPicker, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Buttons.GcDropDownButton, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Pickers.GcFontPicker, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Bars.GcFunctionKey, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Components.GcGlobalHook, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Components.GcKeyLock, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Components.GcMouse, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Buttons.GcRadioButton, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Containers.GcRadioGroupBox, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Buttons.GcSplitButton, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Buttons.GcShapeButton, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Bars.GcTrackBar, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Components.GcTouchToolBar, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Components.GcTouchToolBarProvider, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    <情報表示>
    GrapeCity.Win.Components.GcBalloonTip, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Buttons.GcLabel, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    GrapeCity.Win.Bars.GcProgressBar, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    <データ出力>
    GrapeCity.Win.BarCode.GcBarCode, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    <設計支援>
    GrapeCity.Win.Components.GcStylePlus, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243
    <JPAddress for .NET連携コントロール>
    GrapeCity.Win.BarCode.GcPostalBarCode, GrapeCity.Win.PlusPak.v100, Version=10.0.40xx.2012, Culture=neutral,PublicKeyToken=63a9ba12b6923243

    10.0.40xx.2012は、製品アセンブリバージョンによって変わります。アセンブリバージョンについては、「PlusPak の概要 - アセンブリ」項目をご覧ください。

    .NET Coreプロジェクトで使用する場合は、「licenses.licx」ファイルに記載する情報については「ライセンス情報の埋め込み」をご参照ください。

  5. プロパティウィンドウでLicenses.licx のビルドアクションを「埋め込みリソース」に設定して保存します。

継承コントロールとユーザーコントロール
PlusPak のコントロールを継承して独自のコントロールを作成したり、PlusPak のコントロールと他のコントロールを組み合わせてユーザーコントロールを作成する場合は、LicenseProvider 属性をそれらのコントロールに設定してください。これにより、PlusPak のライセンス情報が正しく継承されます。

LicenseProvider 属性を設定しなかった場合は、PlusPak のライセンス情報を参照できないので、作成したコントロールを使ったアプリケーションを実行したときに、ライセンスのエラーを示すダイアログが表示されます。

コントロールにLicenseProvider 属性を設定するには、次のように、クラスの宣言の前にLicenseProvider 属性を設定します。

Imports System.Drawing
Imports System.Windows.Forms
Imports System.ComponentModel

' 継承コントロールの場合
<LicenseProviderAttribute(GetType(LicenseProvider))>_
Public Class MyControl
    ・・・
End Class

' ユーザーコントロールの場合
<LicenseProviderAttribute(GetType(LicenseProvider))>_
Public Class UserControl1
    ・・・
End Class
using System.Drawing;
using System.Windows.Forms;
using System.ComponentModel;

// 継承コントロールの場合
[LicenseProviderAttribute(typeof(LicenseProvider))]
public partial class MyControl : GrapeCity.Win.Editors.GcTextBox
{
    ・・・
}

// ユーザーコントロールの場合
[LicenseProviderAttribute(typeof(LicenseProvider))]
public partial class UserControl1 : UserControl
{
    ・・・
}
他のアセンブリからの利用
PlusPak をクラスライブラリなどで使用し、他のアセンブリからクラスライブラリを通して再利用する場合、呼び出し元のプロジェクトにも PlusPak のライセンスが必要です。この場合、コントロールを動的に作成した場合と同じように呼び出し元のプロジェクトに licenses.licx ファイルの組み込みを行う必要があります。



複数のプロジェクトを使用している場合、最初に実行されるプロジェクト(アセンブリ)にライセンス情報が必要である点に注意してください。


関連トピック

 

 


© 2008 GrapeCity inc. All rights reserved.