| 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コントロールを以下のようにセットアップできます。
- ActiveXコントロールファイルのコピーをActiveXControlSetupディレクトリに格納します。このファイルは、C:\Windows\SystemまたはC:\Windows\system32ディレクトリに既に存在していることがあります。
- SimpCtrl.infファイルをコピーして、Copy SimpCtrl.inf yourctrl.inf ("yourctrl"の部分はActiveXコントロールの実際のファイル名に置換えます)と入力することにより、ファイル名を変更します。
- 以下を入力することにより、Notepadでyourctrl.infをオープンして、編集を行ないます。
Notepad yourctrl.inf - SimpCtrl.dllのすべてのオカレンスをActiveXコントロールのファイル名に置換えます。NotepadのSearch\Replaceメニューを使用すると、これを迅速に行なうことができます。必要であれば、ファイル名の拡張子も変更してください(例:'dll'から'ocx'に変更する)。
注記:Windows 9xのクライアントステーションで、ファイル名が8文字を超える場合は、コントロールのセットアップが終了する前にコンピュータの再起動が必要になるたびに、CABファイルをダウンロードする必要があります。
- ActiveXコントロールのファイルバージョンを確認するには、コマンドプロンプトで以下を入力します。
Getvers yourctrl.dll
これにより、ファイルのバージョン番号が表示されます。 - INFファイルのアップデートファイルのバージョン番号をActiveXコントロールのファイルバージョン番号に置換えます。
- yourctrl.infファイルを保存します。
- ActiveXコントロール用のCABファイルを作成するには、コマンドプロンプトで以下を入力します。
CABARC N yourctrlDll.Cab yourCtrl.inf yourctrl.dll
または
CABARC N yourctrlOcx.Cab yourCtrl.inf yourctrl.ocx
注記:上述したように、CABファイル名には、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のコピーをActiveXControlSetupディレクトリに格納します。これらのファイルは、C:\Windows\SystemまたはC:\Windows\system32ディレクトリに既に存在していることがあります。
- fm20.infファイルをコピーして、以下を入力することにより、ファイル名を変更します。
Copy fm20.inf yourctrl.inf ("yourctrl"の部分は実際のActiveXコントロールのファイル名に置換えます) - 以下を入力することにより、Notepadでyourctrl.infをオープンして、編集を行ないます。
Notepad yourctrl.inf - fm20.dllのすべてのオカレンスをActiveXコントロールのファイル名に置換えます。NotepadのSearch\Replaceメニューを使用すると、これを迅速に行なうことができます。必要であれば、ファイル名の拡張子も変更してください(例:'dll'から'ocx'に変更する)。
- INFファイルから、Clsidで始まる行を削除します。(ActiveXコントロールのClsidが判明している場合は、代わりにClsidを更新することもできます。)
- fm20enu.dllのすべてのオカレンスを従属するdllのファイル名に置換えます。
- fm20enu.dll=fm20enu.dllという行なおよび[fm20enu.dll]というセクションを複製して、従属するdllを変更することにより、従属するdllを追加します。
- ActiveXコントロールのファイルバージョンおよび従属するdllを確認するには、コマンドプロンプトで以下を入力します。
Getvers yourctrl.dll - これにより、ファイルのバージョン番号が表示されます。
- 従属するdllごとに、これを繰返します。
- INFファイルのアップデートファイルのバージョン番号を、ActiveXコントロールおよび従属するdllのファイルバージョン番号に置換えます。
- yourctrl.infファイルを保存します。
- コントロールのCABファイルを作成します。例えば、fm20dll.cabを作成するには、コマンドプロンプトで以下を入力します。
CABARC N fm20Dll.Cab fm20.inf fm20.dll fm20enu.dll
注記:RSView Displayクライアントは、このfm20dll.cabファイルを使用して、Microsoft Forms 2.0 ActiveXコントロールを自動的にセットアップできます。
上述の例で、ActiveXコントロールファイル名および従属するdllを変更します。必要であれば、例の最後に従属するdllを追加しなければなりません。
ヒント:
INFファイルのバージョン番号はスペースが入っていないことを確認してください。
Active Display Stationに誤ってインストールされたActiveXコントロールを再インストールする方法は、以下のとおりです。
- Active Display StationのExplorerで、\Windows\Downloaded Program Filesディレクトリをオープンして、(右クリックして、メニューから「プロパティ」を選択して)インストールされているActiveXコントロールのプロパティを参照します。
- Dependenciesタブに表示されているファイルが\Windows\Downloaded Program Filesディレクトリに格納されていない場合は、それぞれのファイルを削除します。さらに、\Windows\Downloaded Program Filesに戻り、ActiveXコントロールを削除します。
- 次にActive Display Stationがディスプレイ上でこのActiveXコントロールを使用する際に、サーバからCABファイルがダウンロードされます。
法的な注意事項: |
ロックウェル・ソフトウェア(RSI) のKnowledgebaseに記載された情報は、いかなる保証もなく「そのままで」提供されます。RSI は、明示または暗示されたいかなる保証も負いません。また、RSI がそのような損害の可能性を忠告していた場合でも、直接、間接、偶発的、必然的な利益の損失または損害を含むいかなる損害についても、RSI は責任を負いません。
©2000 Rockwell Software Inc. All rights reserved.
