テクセル
DelphiへJoyWatcherのActiveXをインストール

■ Delphi7の場合

Delphi7からJoyWatcherを使用するためActiveXのインストールを行います。
ここでは、以下のActiveXをインストールします。

1.JWRUN030工程図表示
2.JwComApiJoyWatcherサーバとの通信
3.JWDBApiJoyWatcherデータベースとの通信 (JoyWatcher4.0以上)

以下の説明では、Delphi7は「C:\Program Files\Borland\Delphi7」にインストールされているものとします。

1.JoyWatcher用パレットの新規追加

メニューバー[コンポーネント]-[パレットの設定]で「パレットの設定」ダイアログが表示されます。 「追加」ボタンをマウスクリックします。「ページ名の追加」ダイアログが表示されます。 ページ名に「joywatcher」とキー入力します。「OK」ボタンを押し「ページ名の追加」ダイアログを閉じます。 「パレットの設定」ダイアログの「ページ」欄に「joywatcher」が追加されます。 「OK」ボタンを押し「パレットの設定」ダイアログを閉じます。

2.JoyWatcher ActiveXのインストール

メニューバー[コンポーネント]-[ActiveXの取り込み]で「ActiveXの取り込み」ダイアログが表示されます。 「JWRUN030 ActiveXコントロールモジュール」を選択します。「パレットページ名」では上記で作成した 「joywatcher」を選択します。「インストール」ボタンをクリックします。

ActiveXの取り込み

「インストール」ダイアログが表示されます。ここでは、「既存のパッケージへ追加」を選択します。ファイル名は、「dclusr.dpk」を 選択します。「OK」ボタンをクリックします。

ActiveXインストール

以下表示メッセージに従いコンパイルを行います。

[ファイル]-[上書き保存]で保存を行い「パッケージ-dclusr.dpk」ダイアログを閉じます。

同様に「JwComApi ActiveXコントロールモジュール」と「JWDBApiXControl1 Library」をインストールします。

パレット「JoyWatcher」に「JoyWRun」、「JwComApi」、「JWDBApi」が追加されます。

3.ソースプログラムの変更

■ JWComApi

インストールされた「JwComApi ActiveX」のソースプログラム「C:\Program Files\Borland\Delphi7\Imports\JWCOMAPILib_TLB.pas」 内の「function TJwComApi.Get_PLCTagValue」と「procedure TJwComApi.Set_PLCTagName」が 以下のように変更されているか確認します。変更されてない時は下記に従いエディタ等で変更し上書き保存します。

・Get_PLCTagValue

function TJwComApi.Get_PLCTagValue(Tag: OleVariant): OleVariant;
var
  InterfaceVariant : OleVariant;
begin
  InterfaceVariant := DefaultInterface;
  Result := InterfaceVariant.PLCTagValue;
end;
↓ 変更
function TJwComApi.Get_PLCTagValue(Tag: OleVariant): OleVariant;
begin
  Result := DefaultInterface.PLCTagValue[Tag];
end;

・Set_PLCTagName

procedure TJwComApi.Set_PLCTagName(Index: Integer; const Param2: WideString);
    { Warning: The property PLCTagName has a setter and a getter whose
    types do not match. Delphi was unable to generate a property of
    this sort and so is using a Variant as a passthrough. }
var
  InterfaceVariant: OleVariant;
begin
  InterfaceVariant := DefaultInterface;
  InterfaceVariant.PLCTagName := Param2;
end;
↓ 変更
procedure TJwComApi.Set_PLCTagName(Index: Integer; const Param2: WideString);
begin
  DefaultInterface.PLCTagName[Index] := Param2;
end;

■ JWDBApi

同様に「JwDBApi ActiveX」のソースプログラム「C:\Program Files\Borland\Delphi7\Imports\JWDBApiXControl1_TLB.pas」 内の「enum TxMouseButton のための定数」をコメントとし上書き保存します。これは、「 mbLef」、「mbRight」、「mbMiddle」がDelphiの 定義と重なるためです。

// enum TxMouseButton のための定数
type
  TxMouseButton = TOleEnum;
const
  mbLeft = $00000000;
  mbRight = $00000001;
  mbMiddle = $00000002;
↓ 変更
// enum TxMouseButton のための定数
{type
  TxMouseButton = TOleEnum;
const
  mbLeft = $00000000;
  mbRight = $00000001;
  mbMiddle = $00000002;}

メニューバー[ファイル]-[開く]で「開く」ダイアログを表示します。 Delphi7がインストールされているディレクトリィ内「Lib」ディレクトリィ中の「dclusr.dpk」を選択し 開きます。(C:\Program Files\Borland\Delphi7\Lib\dclusr.dpk)コンパイルを行い保存します。

4.JoyWatcher ActiveXの削除

Delphi7上からJoyWatcher用ActiveXを削除します。メニューバー[ファイル]-[開く]で「開く」ダイアログを表示します。 Delphi7がインストールされているディレクトリィ内「Lib」ディレクトリィ中の「dclusr.dpk」を選択し 開きます。(C:\Program Files\Borland\Delphi7\Lib\dclusr.dpk)

「削除」ボタンをクリックします。「プロジェクトから削除」ダイアログが表示されます。 「JWRUN030Lib_TLB.dcr」と「JWRUN030Lib_TLB」を選択します。「OK」ボタンクリックで削除確認ダイアログが 表示されます。「はい」をクリックします。確認ダイアログは選択数分出ます。

コンパイルボタンをクリックします。確認ダイアログが表示されます。 [ファイル]-[上書き保存]で保存を行い「パッケージ-dclusr.dpk」ダイアログを閉じます。

さらにディレクトリC:\Program Files\Borland\Delphi7\Imports\内の以下のファイルをエクスプローラ等で 削除します。

同様に「JwComApi」、「JWDBApi」を削除します。


■ Delphi2007の場合

  1. Delphi2007を起動します。メニュバーより[ファイル]-[新規作成]-[パッケージ]を選択します。 プロジェクトマネージャにパッケージのプロジェクトが作成されます。 (プロジェクトマネージャウインドウ)
  2. パッケージの名称を変更します。 「package1.bpl」文字を選択し、マウス右クリックで表示されるポップアップメニューより 「名前の変更」を選択します。ここでは、名称を「package1.bpl」→「JoyWatcher.bpl」に変更します。
  3. メニュバーより[コンポーネント]-[コンポーネントのインポート]を選択します。 「コンポーネントのインポート」ダイアログが表示されます。 「ActiveXコントロールの取り込み」を選択し、「次へ」ボタンをクリックします。
  4. コンポーネントのインストール」ダイアログが表示されます。登録されたActiveXコントロールより 「JwComApiActiveXコントロールモジュール」を選択し、「次へ」ボタンをクリックします。
  5. コンポーネントのパレットページ名と生成された取り込みファイルのディレクトリを指定します。 ここでは、デフォルト通りとし、「コンポーネントラッパーの作成」にチェックを入れ、「次へ」をクリックします。
    参考)作成されるユニット(ソースプログラム)は、ここで表示されるユニットディレクトリに作成されます。
  6. ユニットの作成となります。 「JoyWatcher.dprojプロジェクトにユニットを追加」を選択します。「完了」ボタンでウインドウが閉じます。 ユニット内容(JWCOMAPILib_TLB)が表示されます。 作成されたユニットには、エラーがあるので修正します。
  7. プロジェクトマネージャ」ウインドウでパッケージ「JoyWatcher.bpl」を選択します。マウス右クリックで 表示されるポップアップメニューより「インストール」を選択し実行します。正常にインストールされると 「登録されました。」とのダイアログが表示されます。
  8. 同様に上記3番より「JwRUN030ActiveXコントロールモジュール」をインストールします。
  9. プロジェクトを保存します。Delphi2007を終了します。
    参考)プロジェクトを保存しなくてもActiVeXは登録されます。

JoyWatcherによる制御監視システムの構築

©2005-2015 TEXCELL CORPORATION
テクセル株式会社