- ベストアンサー
ActiveXコントロールのHTMLへの貼り付け方その2
- 自作ActiveXコントロールをHTMLに貼り付ける方法についての質問です。MFC ActiveX Control Wizardでスケルトンを作成し、円を表示する機能を持つコントロールを作成しました。しかし、それをHTMLに貼り付けて表示させることができません。どうすればいいでしょうか?
- HTMLに自作のActiveXコントロールを貼り付けて表示させる方法についての質問です。MFC ActiveX Control Wizardを使用してスケルトンを作成し、円を表示する機能を付けたコントロールを作成しました。しかし、HTMLに貼り付けても表示されません。何が間違っているのか、教えてください。
- ActiveXコントロールをHTMLに貼り付ける方法についての質問です。作成したコントロールは円を表示する機能を備えていますが、HTMLに貼り付けると表示されません。どうすれば正しく表示させることができるでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>どんなActiveXコントロールでも、 >パラメータは必要になるのでしょうか そんなことはありません。 私も以前サンプル程度にVBでOCXを作成し、Webページに貼り付けた ことがありましたが、上記の形式でObjectタグを 記述したら別に何も考えないで表示されました。 私はレジストリ周りが一番怪しいかと思いますが、 みてるとおっしゃってますよね。
その他の回答 (2)
- uyama33
- ベストアンサー率30% (137/450)
> classidはレジストリに登録されているか? この部分はどうしましたか? 私も、練習で作りました。ハノイの塔でしたが 動きました。 手順は 1.ソフトを作る 2.レジストリの登録する 3.HTML の記述 です。 2.の部分か抜けていませんか? 参考にしたのは マイクロソフトの正式マニュアルの プログラマーズガイドだったかな 番号のついてない本 他の本には 1~6の番号があった。 ビジュアルC++のマニュアルのことです。
お礼
お答えありがとうございます。 問題は解決したしました。 問題の理由は解答#2のお礼に書いた通りです。 間違っていた時点でもレジストリの登録は行っていました。 そうでないと、CLASSIDは記述できませんから(笑)。 ただ、そのときに使うCLASSIDがどれなのかを間違っていました。 解答#2のお礼にも書きましたが、「ActiveX Control Pad」というツールは大変便利です。 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaxctrl/html/cpad.asp このURLからダウンロードできますのでご参考まで。 お答え、ありがとうございました。
- zerosix
- ベストアンサー率31% (47/149)
>これは円を表示する機能を持っていますよね。 それは私は知りません。 >なにが間違っているのか、抜けているのかも分かりません。 classidはレジストリに登録されているか? codebaseは適切か? width,heightは小さすぎないか? あとは、Objectタグの間にparamタグで必要なパラメータをセット してないとか?
お礼
お答えありがとうございます。 まずどんな状態かというと、ブラウザ上ではActiveXコントロールファイルを貼り付けた位置には、「X(ペケ)マーク」が表示されています。 とにかく貼り付けの確認だけをしたかったので、余分なものは乗せていません。 ActiveXコントロール自体も、ActiveXControlWizardで出来たばかりのもの(スケルトン状態)です。 出来たものはActiveXテストコンテナに貼り付けて、確認しています。 classid、codebase、width,heightに関しては問題ないと思います。 問題はparamタグです。 勝手に円を表示するだけのActiveXコントロールなので、パラメータは必要の無いと思っているのですが、 どんなActiveXコントロールでも、パラメータは必要になるのでしょうか? (それとも、元々指定しなければいけないものなのか・・・) 虫のよい話ですが、ActiveXコントロールを作り、HTMLに貼り付けられた方でしたら、 その手順について説明や、解説しているURLなどをご存知であれば、教えていただければ幸いです。 私も検索などをしてはいるのですが、 貼り付けるところを解説してくれているものは見つかっていないので・・・ また自分でも探してみます。 お答え、ありがとうございました。
お礼
お答えありがとうございます。 色々試した結果うまくいきました。 ご指摘のとおり、レジストリが原因でした。 レジストリエディタで表示されているIDが色々あるので 迷っていました。 ソース側で大元になっていそうなIDを使っていました。 レジストリエディタではTypelibに表記されているIDです。 それを使っていて「おかしいな、おかしいな」と思い、 結局「AvtiveX Control Pad」なるツールを、マイクロソフトからダウンロードしました。(無料) そのツールで生成されたCLASSIDを見ると、 使いたいActiveXコントロールのレジストリの 先頭のフォルダに表示されているIDでした。 というわけで、僕の使っていたIDが間違えていたというオチです。 まことに申し訳ありませんでした。 お答え、本当にありがとうございました。