サービス&サポート


RAD - ActiveXの自動ダウンロード機能をリモートクライアントに組込む方法

このテクニカルノートの情報は、以下に該当します:

製品:RSView32 Active Displayタイプ:アプリケーションノート
テクニカルノートID:A1403JA
パッケージ/モジュール:Browser Client
Display Client
Server
英文版作成日:2000/12/01
リビジョン:6.20.63
6.30.16
修正リビジョン:
サブシステム: N/A

テクニカルノート本文:

背景:
RSView32 Active Display System Ver. 6.20およびそれ以降では、リモートクライアントへのActiveXの自動ロード機能をサポートしています。ダウンロードされるActiveXに対応するCABファイルが以下のディレクトリに格納されていなければなりません。(デフォルトのインストール位置の場合)

C:\Program Files\Rockwell Software\ActiveXControlSetup

以下の情報は、RSView Active Display Server 6.20と共にインストールされるCreatingCabFiles.txtファイルにあるものです。

Internet Explorerの構成:
CABファイルをリモートクライアントに正しくダウンロードするには、Internet Explorerで、各クライアントのセキュリティが以下のように設定されていなければなりません。これにより、サインされていないActiveXコントロールのセキュリティチェックを効果的に無効にすることができます。RSView32 Active Display Systemの構成に適合するWebコンテントゾーン、インターネットまたはローカルなイントラネットを選択してください。

Download unsigned ActiveX controls
Enable

中程度のセキュリティ設定では、これはDisableと記載されており、これによりサインされていないActiveXコントロールのダウンロードが防止されます。中程度のセキュリティ設定では、これがActiveXコントロールのダウンロードを有効にするために必要な唯一の変更です。

CABファイルの作成
RSView32 Active Displayクライアントは、CABファイルを使用して、RSView32ディスプレイで使用するActiveXコントロールの正しいバージョンを自動的にインストールできます。

CABファイルを作成するには、RSView32 Active Display Systemソフトウェアと共にインストールされるCABARC.exeプログラムを使用します。CABARC.exeは、RSView32 Active Displayサーバと同じディレクトリ内のActiveXControlSetupディレクトリに格納されています。デフォルトのディレクトリは、c:\Program Files\Rockwell Softwareです。CABARCプログラムのドキュメントは、CABARC.docというファイルに格納されています。

インターネットの以下のWebサイトで"INF File Architecture"を検索することにより、INFファイルの詳しい情報を入手できます。

search.microsoft.com/us/dev

作成したすべてのCABファイルは、RSView32 Active Displayサーバが実行されているコンピュータ上のActiveXControlSetupディレクトリに格納しなければなりません。CABファイルは、以下の命名規則に従っていなければなりません。

Visual Basicで作成されたActiveXコントロール
Visual Basic 5.0またはVisual Basic 6.0でコントロールを作成した場合は、これらのパッケージに付属のツールを使用して、自動ダウンロード用のCABファイルを作成できます。Visual Basic 5.0の場合は、Application Setupウィザードを使用してCABを作成して、"Create Internet Download Setup"オプションを選択します。Visual Basic 6.0の場合は、"Package and Deployment"ウィザードを使用してInternet Packageを作成します。すべての付属物が同じCABファイルに入っているかどうかを確認してください。Application SetupおよびPackage and Deploymentウィザードの使用方法は、Visual Basicのドキュメントを参照してください。

CABファイルの作成が終了したら、以下のファイルの命名規則に従って、ファイル名を変更しなければなりません。Visual Basicでは、RSView32の自動命名規則とは関係なくファイル名を付けるため、VBのPackage and Deploymentウィザードの終了後に、いくつかのセットアップファイル名を変更する必要があります。これらのファイルは、セットアップウィザードが作成する"Support"フォルダに格納されています。

以下のステップは、Visual Basic 6.0で作成されたプロジェクト用のものです。また、これらのステップは、<VBPROJECTNAME>という表記方法を使用して、Visual Projectの名前(SecurityControls, SetPoint, RxTxなど)を示します。この表記方法をVisual Basicのプロジェクト名に変更してください。

Internet Download Setupの作成方法
以下のステップにより、Active Displayクライアントへの自動ダウンロード用にActiveXControlSetupフォルダにコピーされるキャビネットファイルが作成されます。

1.Package and Deploymentウィザードを使用して、Internet Download Setupを作成します。
2.Notepadまたは他のテキストエディタで、Supportフォルダの<VBPROJECTNAME>.INFファイルを編集します。
3.以下のセクション情報を変更して、プロジェクト名のCABファイルを指定します。
例:
[SourceDisksNames]
1=%DiskName%,<VBPROJECTNAME> OCX.CAB,1
4.<VBPROJECTNAME>.DDFファイルを編集して、以下の命名規則に従ってキャビネット名を変更します。
例: .Set CabinetNameTemplate="<VBPROJECTNAME>OCX.CAB"
5.Supportフォルダの<VBPROJECTNAME>.BATファイルを実行して、CABファイルを再作成します。

Standard SetupおよびActive Display DownloadのCabファイルの作成方法
以下のステップは、Active DisplayサーバへのSetup.exeのインストールに使用したり、ActiveXControlSetupフォルダにコピーしてActive Displayクライアントへのダウンロードに使用するための、共通のキャビネットファイルを作成します。

1.Internet Downloadセットアップを作成して、Package and Deploymentウィザードを実行して、Standard Setupパッケージを作成して、それらを別々のフォルダに作成します。
2.Internet Download SetupのSupportフォルダからStandard Setupフォルダに<VBPROJECTNAME>.INFをコピーします。
---ここで、Standard SetupフォルダおよびSupportフォルダのファイルを修正します。---
3.Supportフォルダの<VBPROJECTNAME>.DDFファイルを編集して、リストの最下部に"<VBPROJECTNAME>.INF"を追加します。さらに、自動ダウンロードの命名規則に従って、キャビネット名を変更します。
例: .Set CabinetNameTemplate="<VBPROJECTNAME>OCX.CAB"
4.Notepadまたは他のテキストエディタを使用してSupportフォルダの<VBPROJECTNAME>.INFファイルを編集して、以下のセクション情報をプロジェクトのCABファイル名に変更します。
例: [SourceDisksNames]
1=%DiskName%,<VBPROJECTNAME>OCX.CAB,1
5.Notepadまたは他のテキストエディタを使用してSETUP.LSTファイルを編集して、"CabFile="の設定をプロジェクトのCABファイル名に変更します。
例: CabFile=<VBPROJECTNAME>OCX.CAB
6.すべての変更内容を保存します。
7.SETUP.LSTファイルを元のSupportフォルダにコピーします。
8.Supportフォルダの<VBPROJECTNAME>.BATファイルを実行して、CABファイルを再作成します。

重要な注意:Package and Deploymentウィザードを実行して、このプロジェクトのセットアップを作成するたびに、これらのファイルを修正する必要があります。1つの方法は、アプリケーションを作成して、セットアップウィザードを1回実行することです。プロジェクトを作成するたびに、ターゲット(DLLまたはOCX)をSupportフォルダにコピーして、<VBPROJECTNAME>.BATファイルを実行して、キャビネットファイルを再作成します。
プロジェクトの付属物を追加または変更する場合や、Setupの情報に変更があり、Package and Deploymentウィザードを再び実行する必要がある場合にのみ、これらのステップを繰返せばよいため、この方法は便利です。

RSView32 Active Displayクライアント上でのCABファイルの命名規則
RSView32 Active Display Systemは、CABファイル名を以下のように命名します。

FilenameExt.CAB
Filename - ActiveXコントロールの実行可能ファイル名
Ext - ActiveXコントロールのファイル名の拡張子(例:dllまたはocx)

例えば、fm20.dllというActiveXコントロールのCABファイル名は、fm20dll.cabとなります。

CABファイルに複数のActiveXコントロールが含まれ、各ActiveXコントロールが別々の実行可能ファイルを使用する場合、各ActiveXコントロールの実行可能ファイル用にCABファイルを複製して、実行可能ファイルに対応するファイル名を付ける必要があります。

例1:
従属するdllを持たないActiveXコントロールのCABファイルを作成する。

上述のファイルをSimpCtrl.dll ActiveXコントロール用に修正して、他のdllに従属するdllを持たないシンプルなActiveXコントロールを以下のようにセットアップできます。

これにより、コンピュータ上でRSView32 Active Displayサーバが実行されている場合に、このActiveXコントロールはRSView32 Active Displayクライアント上で自動的にセットアップできます。RSView32 Active DisplayクライアントがRSView32 6.2またはそれ以降で保存されたディスプレイをロードして、そのディスプレイにこのActiveXコントロールが含まれる場合、必要であれば、このActiveXコントロールはクライアントコンピュータ上でセットアップされます。

例2:
他のdllに従属するdllを持つActiveXコントロールのCABファイルを作成する

ActiveXcontrolSetupディレクトリに格納されたfm20.dllのサンプルファイルを修正して、他のdllに従属するdllを持つActiveXコントロールをセットアップします。fm20.dllは、fm20enu.dllに従属しています。(つまり、ActiveXコントロールが機能するには、コンピュータ上で両方のdllがセットアップされていなければなりません。)

上述の例で、ActiveXコントロールファイル名および従属するdllを変更します。必要であれば、例の最後に従属するdllを追加しなければなりません。

ヒント:
INFファイルのバージョン番号はスペースが入っていないことを確認してください。

Active Display Stationに誤ってインストールされたActiveXコントロールを再インストールする方法は、以下のとおりです。

法的な注意事項:
本版は、英文テクニカルノートの和訳です。英文原文を正文といたします。
ロックウェル・ソフトウェア(RSI) のKnowledgebaseに記載された情報は、いかなる保証もなく「そのままで」提供されます。RSI は、明示または暗示されたいかなる保証も負いません。また、RSI がそのような損害の可能性を忠告していた場合でも、直接、間接、偶発的、必然的な利益の損失または損害を含むいかなる損害についても、RSI は責任を負いません。
©2000 Rockwell Software Inc. All rights reserved.