掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
OCXのDelphi対応 (ID:48957)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Delphi XE5 / Windows7で開発しています。 OPOS(Open Point of Service)技術協議会準拠の「つり銭機」を制御するOCX(POSCashChanger.OCX)があります。 VC++6、VB6、VS2005には対応しているそうです。 このOCXを「コンポーネントのインポート」−「ActiveXコントロールの取込」からDelphiに登録しました。 取り込んだ「ActiveX」のパレットページに「TOPOSCashChanger」が生成されて、そのコンポーネントをフォームに貼り付けました。 ここまでは問題ないようにみえます。 ただ、そのコンポーネントを使用して以下のようにOPOSに準拠した開局処理のコードを書いたのですが、「Claimed」「DeviceEnabled」「DataEventEnabled」「FreezeEvents」がエラーになります。 「'TOPOSCashChanger'は'DeviceEnabled'という名前のメンバーを含んでいません」と表示されます。 procedure TFMain.CashChangerStart; //開局処理 var lngRet,pRc: Integer; begin pRc := 0; OPOSCashChanger1.Open('CashChanger',pRc); //Openメソッドの実行 OPOSCashChanger1.ClaimDevice(10000,pRc); //ClaimDeviceメソッド 排他アクセス権獲得 If OPOSCashChanger1.Claimed = False Then begin //プロパティの設定 OPOSCashChanger1.DeviceEnabled := True; //Deviceの有効化 OPOSCashChanger1.DataEventEnabled := True; OPOSCashChanger1.FreezeEvents := False; end; end; OCXを取り込んだときに生成されたと思われる「OposCashChanger_COO_TLB」というファイルをみると以下のような行があるのでメンバーになっていると思うのですが.... このあたりの知識がありません。 property Claimed[out pClaimed: WordBool]: WordBool readonly dispid 14; function DeviceEnabled(out pDeviceEnabled: WordBool): WordBool; dispid 17; function DataEventEnabled(out pDataEventEnabled: WordBool): WordBool; dispid 16; function FreezeEvents(out pFreezeEvents: WordBool): WordBool; dispid 18; これは何か回避方法があるのでしょうか? それとも単にこのOCXがDelphiに対応していないため使用できないとうことなのでしょうか?
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.