2008年3月21日金曜日

HTML ページ内における OCX ライセンシング

[http://www.nsoftware.com/kb/showentry.aspx?entry=09229702]

該当製品:


  • IP*Works!
  • IP*Works! SSL


現象:


OCX を使用して HTML ページを作成していますが、ユーザ側で Internet Explorer を使用して当該ページを表示すると About ダイアログが表示されてしまいます。

解決法:


Internet Explorer 内の ActiveX コンポーネントにライセンスを付与するためには、Microsoft の LPK ツールを使用する必要があります。また、lpk ファイルは license.lpk という名称でなければなりません。

もし実際に動く実例が必要な場合は、弊社サポートまで email にてご連絡ください。

IP*Works! 製品の ActiveX コンポーネントは ActiveX Control Licensing Mechanisum を実装しています。Web 上でランタイムライセンスを付与されたコントロールを配布するためには、適切なランタイムライセンスファイル (LPK ファイル) を生成し、ウェブページ内に含める必要があります。そうでないと例え当該コントロールをダウンロードしインストールしたとしても当該コントロールはユーザ側マシンでは表示されません。コントロールに対するランタイムライセンスは、当該コントロールに対する有効な開発者ライセンスを持つ人のみが生成することができます。ウェブページにランタイムライセンスを付与済みのコントロールを含める具体的な方法につきましては、ActiveX Software Development Kit (SDK) の「Licensing ActiveX Controls」節を参照して下さい。ActiveX SDK のダウンロードは http://www.microsoft.com/ から行うことができます。以下に SDK 文書からの抜粋で、ウェブページにランタイムライセンス付与済みにコントロールを配布するための方法を示しておきます。

ライセンスパッケージは、既存の <OBJECT> タグ (要素) を使用して HTML ファイルに記載されなければなりません。ライセンスパッケージは、ランセンスマネージャオブジェクトにより解釈され、HTML 上の他のコントロールにライセンスを受け渡します。ライセンスパッケージオブジェクトは、当該ライセンスを必要とする全てのオブジェクトより前に当該 HTML ページに埋め込まれていなければなりません。HTML へのライセンスパッケージ埋め込みのための構文は以下のようになります。
      <OBJECT CLASSID = "clsid:5220cb21-c88d-11cf-b347-00aa00a28331">
<PARAM NAME="LPKPath" VALUE="relative URL to .LPK file">
</OBJECT>

注意: Internet Explorer 3.0 は、ある HTML ページ内の最初のライセンスパッケージのみを有効とみなします。もし当該ページ内で複数のコントロールを使用しているにもかかわらず、最初に見つかったライセンスパッケージにそれらに対するライセンスが含まれていない場合、該当するコントロールはインスタンス化に失敗するでしょう。

ActiveX SDK には自動的に LPK ファイルを生成するユーティリティ (LPK_TOOL.EXE) が含まれています。

詳細に関しては以下の URL を参照して下さい。
http://www.microsoft.com/workshop/components/activex/licensing.htm

0 件のコメント: