
ある制御装置をパソコンからの命令で動かしたいのですが,その装置の SDK が ActiveX コントロールの形で提供されています.プログラミングは VC++ で行いたいのですが,ActiveX を VC++ で利用する方法がイマイチわからず,困っております.
当方の環境は Visual Studio 6.0 または 2003 です.どちらでも利用できますが,できれば 2003 を利用したいと考えております.
まず MFC アプリケーションを作成し,ダイアログエディタで右クリック→ActiveX コントロールの挿入で,使用する ActiveX コントロールを貼り付けます.
ここまでは合っていますでしょうか?
私の勉強不足で申し訳ないのですが,ここから先をどう進めてよいのかわかりません.
あくまでもイメージなのですが,その ActiveX が提供する関数を C コードの中で呼び出す,といった形で使用できないでしょうか?
わかる方いらっしゃいましたら,よろしくお願いいたします.
No.2ベストアンサー
- 回答日時:
ClassWizradでラッパークラスを作成してください
それからそのクラスに対しての変数を宣言します。
ラッパークラスをちゃんと作らないと呼び出すことは出来ません。
制御装置のメーカサイトにサンプルプログラムとかないですか?
文章だけで操作をお教えするには限界があります。
古い記事ですが
http://w3.fb.u-tokai.ac.jp/std/LIB/SampleDoc/vcr …
操作は同じです
非常に有益な情報ありがとうございます.
リンク先を参考にプログラムしてみたところ,かなりいいセンまでいくことができました.
しかし,生成されたラッパークラスにあるメソッドは,引数などが VC 側で一部変更されており,手元にある ActiveX の仕様書とは少し違ってしまっています.そのため,VC 側で変更された引数に何を与えればよいのかわからず,お手上げ状態になってしまいました.
No.3
- 回答日時:
うーん!?仕様書と物が違うのは提供元に確認するしかないですね
もしかしてOposですか?
後仕様書はVB用だったらVCとは引数の型が違う事があります
確かに仕様書は,VB 用のものです.ただ,購入時に販売先に聞いたところ,VC でもプログラミングは可能とのことでした.
そこで,VC でのプログラミングについてサンプルコードなどもらえないかどうか販売先に問い合わせたところ,こちらには VB の開発環境しかないので,それは無理,と言われました…
とりあえず,引数として何を与えればよいのか,という問題については,それっぽい引数を片っ端から与えることでなんとか解決することができました.
SuperRINTA 様には大変お世話になりました.ありがとうございました.
No.1
- 回答日時:
ActiveXを貼り付けたらウィザードでそのActiveXに変数をつけてください、m_OCXなどとします。
そうすることでm_Ocx->initialize()などとメソッドやプロパティに
アクセスできます。
早速のご回答,大変ありがとうございます.
ダイアログに貼り付けた ActiveX 上で右クリック→変数の追加,でしょうか?ただ貼り付けただけでは,変数の追加を選択することができません.右クリック→クラスの追加で,まずクラスを作るのかと思いましたが,クラスを作ってから再び変数を追加しようとすると,
ランタイムエラーが発生しました.デバッグしますか?
というダイアログが出ます.ここでデバッグすると,
拡張プロバイダでこのオブジェクトのエクステンダを返すことができませんでした.
というエラーが出ます.
何かやり方が間違っているのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# ActiveXコントロールを.NETにインポートできない??? 2 2023/05/02 02:50
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
- Excel(エクセル) EXCEL ActiveX コマンドボタンで実行する前にいったんmsgBoxで確認を求めたい 1 2022/07/06 19:41
- Excel(エクセル) ActiveXコントロールのコマンドボタン移動させようとすると消える 1 2022/04/26 22:29
- その他(SNS・コミュニケーションサービス) ゲームでボイスチャットを使いたいんですが、親にどう説明したらいいですか 2 2022/08/03 14:07
- その他(プログラミング・Web制作) プログラムの起動、利用について、使用期間を設定する方法 3 2023/08/06 21:03
- 画像編集・動画編集・音楽編集 【急】【Zbrush】3DCG初心者です。ノートPCでのZbrush動作環境につきまして 1 2023/08/19 17:38
- タブレット 子供のタブレットのペアレンタルコントロール 1 2023/04/14 14:34
- その他(Microsoft Office) EXCELでバーコードを作成すると白くなってコードが見えません 1 2022/04/04 14:24
- 教育・文化 高校生です。将来政治家になって犯罪率を0.0%代にしたいのですが、可能だと思いますか? ㅤ 大まかな 8 2022/08/27 18:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAでオプションボタン...
-
チェックボックスをオンにした...
-
EXCELでactivexコントロールを...
-
chr関数の呼び出しで「プロ...
-
カメラスクロールするのを動画...
-
アクセス特有の書き方?
-
vb.netで画面のコントロールId...
-
ExcelVBAでListViewが使用できない
-
C#で自分のウインド・ハンド...
-
ActiveX DLL と ActiveXコント...
-
エクセル・VBA CheckBoxのオブ...
-
excelのリストボックスで選択し...
-
複数のコマンドボタン(VBAで)...
-
ControlTipTextの書式設定(Font...
-
コントロールを移動できない
-
全てのオブジェクトのプロパテ...
-
Groupboxの配下のコントロール...
-
Labelコントロールの(左右)余...
-
vba dbcommand button activex ...
-
C# Form上に配置されたコントロ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル・VBA CheckBoxのオブ...
-
EXCELでactivexコントロールを...
-
エクセルVBAでオプションボタン...
-
チェックボックスをオンにした...
-
カメラスクロールするのを動画...
-
'ckbl' コントロールは作成され...
-
ExcelVBAでListViewが使用できない
-
Groupboxの配下のコントロール...
-
ユーザーフォームで動的(Me.Con...
-
VBA ユーザーフォームの Keypre...
-
vb.netで画面のコントロールId...
-
全てのオブジェクトのプロパテ...
-
間違えて配置してしまったコン...
-
chr関数の呼び出しで「プロ...
-
VBAのフォームでTextBoxがいっ...
-
OCXって何ですか?
-
アクセス特有の書き方?
-
エクセル コントロールツール...
-
コントロールを移動できない
-
Labelコントロールの(左右)余...
おすすめ情報