[VC++6.0/Win2000]
はじめまして、初心者のS44と申します。
「特定のサイト内を検索するツールバーを作成し、IEのツールバーに追加する」
という処理(イメージとしては「Google」の検索用ツールバーが近いです)を
作成することになりました。
ツールバーを作ることについては目処が付いたのですがそのツールバーをIEに
どうやって組み込むかについて調べれば調べるほど分からなくなってしまい
こちらに伺った次第です。
どなたかお詳しい方、また初心者にも分かりやすく説明しているサイトをご存知
の方ご教授いただければ幸いです。宜しくお願い致します。
>> 「Google」の検索用ツールバー
これをインストールする前と後で
レジストリの変化を調べてみてはどうかな。
#正攻法ではないので売り物にはできませんが。
なーめ樣
ご返答ありがとうございます。
レジストリですか…
内容を見ることは出来るのですが、正直言いましてどこをどう
見たら(したら?)良いのか皆目検討がつきませんでした。
別段売り物ではないのでこの方法で解析しても良かったのですが
せっかく助言を頂いたのに申し訳ありません。
正攻法での方法で何かご存知のことがありましたら引き続き
お願い致します。勝手言いまして申し訳ございません。
なお、私の方でも「プラグイン」や「BHO」を検索キーにしてあちこち
探して降ります。良いものを見つけたら報告したいと思います。
>> どこをどう見たら
それがわかっていたら質問する意味ないですね。
レジストリ全体です。
目で見るのではなく
インストールする前と後で
レジストリを根っこからテキストにセーブする
レジストリツリーの[マイコンピュータ]をクリック。
メニュー: [レジストリ][レジストリファイルの書き出し]
※ここで UNICODE->ASCIIの変換が必要かもしれない。
fc か windiff で比較。
ファイルが大きいですが、大きすぎるなら、各ルートキーごとに
比較しても同じですね。
なーめ樣
再び書込み頂きありがとうございます。
早速実行してみました。
大きいファイルになり見るのが大変でしたが、追加された項目が
どこに設定されてるが確認できました。
さて、これらの追加される情報をexeファイルを実行することに
より自動的に設定させる為にはどうすれば良いのでしょうか?
海外のサイトで公開しているページを見つけたのですが、英語が
全く読めない為、翻訳ツールを使い解読しても細かい部分までは
内容が汲み取れませんでした。
ちなみに、下記URLがそのサイトにあたります。
http://www.codeproject.com/atl/ietoolbartutorial.asp
又は
http://www.codeproject.com/wtl/toolband.asp
です。
上記サイトと近い内容を持っている日本語サイトをご存知の方が
いらっしゃいましたらお願い致します。
>> 自動的に設定させる
レジストリ登録をしたい場合について、
MFC+ATL系なら
CRegKey というクラスがありますよ。
#include <atlbase.h>
SDK系ならHELPで
RegCreateKey()と
その関連項目を調べてください。
2つ目のURLのプロジェクトファイル
toolband_src.zip
を解凍して開いてみました。
クラスビューにフライパンのアイコン(^^;;があるので、
COMですね。ということは、regsvr32 していると思われ、
[プロジェクト][設定][カスタムビルド]を見ると
やっぱりレジストリに登録してます。
クラスビューのグローバルにも、
STDAPI DllRegisterServer(void)
STDAPI DllUnregisterServer(void)
が見えますね。
COMをご存知ならば、日本語サイトなど探さなくても、
正攻法で堂々とプログラムが組めますよ。
ご存知なくば、日本語のCOM+の書籍はいくらでもありますから。
http://www.amazon.co.jp/exec/obidos/ASIN/0735607281/qid%3D1102557267/249-5407720-7299534
http://www.amazon.co.jp/exec/obidos/search-handle-form/249-5407720-7299534
とりあえずおすすめということで。
なーめ樣
数々の情報寄せていただきありがとうございます。
また、参考システム(toolband_src.zip)の解析までして頂き恐縮です。
割り込み作業の為、本件一時止まっておりました。
>クラスビューにフライパンのアイコン(^^;;があるので、
>COMですね。
「COM」... 恥ずかしながら初耳であります。勉強不足でございました。
(「C++,IE,ツールバー」縛りで調べても引っかからない訳だ )
VC++の環境でCOMの開発出来るかどうか、それすら分かっていないので
早速、書店に走ります。
お勧めの「Inside Com+ Base Services 」は<洋書>ですよね、う〜
和訳された物があればいいなぁ...
ちなみに<和書・和訳含>でなーめ樣お勧めの物はございますでしょうか?
参考までにお教えいただければ幸いです。
いくら調べても核心の部分が見えず内心焦っておりましたが、今回なーめ樣の
書込みで光明が見えてきました。ありがとうございました。
これから再度資料を集めさらに調査検討を行ないます。
また疑問等出てくると思いますので、お力お貸し頂けますようお願い致します。
>> 「COM」... 恥ずかしながら初耳であります
COMが出てから大分たつよ。というかもう古いという声も聞こえはじめ。
以下の用語だいじょうぶ?
ActiveX
OLE
ATL
C#
Managed C++
.Net Framework
まあ、Google 確認ですね。
>> 「Inside Com+ Base Services 」
あ、ごめんなさい、和書の方のつもりで。
もちろん和訳本の方をもっています。
>> VC++の環境でCOMの開発出来るかどうか、
VisualStudio(VC++6.0) 起動。
[ファイル][新規作成]
[プロジェクト]タブ
[ATL COM AppWizard] クリック
[プロジェクト名]名前を入力 MyIEToolBar
[位置] いつもの位置 (COM アプリ専用の場所を作るといいよ)
[OK]
◎ダイナミックリンクライブラリ
回MFCのサポート(あなたが「MFC使い」ならば)
回MTSのサポート(データベースなどを利用するならば)
[終了]
[OK]
[挿入](メインメニュー)
[ATLオブジェクトの新規作成]
[シンプルオブジェクト]
[次へ]
[名前]タブ
[ショートネーム] IeToolBar (このタブにはこれだけ)
[アトリビュート] いじらない。
ちなみにここでデュアルインターフェースになっていると
VBなどからアクセスが可能になります。
クラスビューを見てください。
フライパンがあるでしょう。(^^;;
toolband プロジェクトと同じようなものが表示されているはずです。
次にすべきことは toolband のファイルと異なるところを修正していきます。
ただし、ID等、ユニークにすべきところもありますので、注意です。
とくに
uuid(24F2DE34-F715-4AFE-B8A5-E5C725795A78),
といった文字列は、レジストリを見たときに沢山ある {} で括られて
表記された「アレ」であり、
あなたの作成したプログラムのために新規に生成されたものであるので
変更してはいけません。
あのごちゃごちゃした「アレ」はこうして作られるのです。
レジストリの「アレ」の正体がわかったでしょう。
それから、
VCの
[ツール][OLE/COMオブジェクトビューア]
起動してみてください。
レジストリを見るより分かりやすい表現になっています。
ちゃんと示さねば。
>> 「Inside Com+ Base Services 」
『インサイドCOM+基本編』
日経BPソフトプレス/豊田孝訳
なーめ樣
多くの情報についての書込みありがとうございます。
私の様なド素人の為にお時間を取らせてしまい誠に申し訳ございません。
>>COMが出てから大分たつよ。というかもう古いという声も聞こえはじめ。
えっ、そうだったんですか・・・ 正直、今の今迄知りませんでした。
>>以下の用語だいじょうぶ?
ActiveX, OLE は、以前「VB」で作業した際に耳にしておりましたが
その他は、今回調査しているときに目にした位ですのでその程度の
知識しかないとお思い下さい。(早速、全部調べました)
>>『インサイドCOM+基本編』
>>日経BPソフトプレス/豊田孝訳
しまった!早まったかも!ご返答頂く前に近所の書店に走ってしまいました。
以下2冊購入しましたが外してしまいましたでしょうか?
1.Visual C++プログラマのためのCOM入門 —
はじめるWindowsシステムプログラミング DeV selection
2.ATL COMプログラミング —
ATLとVisualC++で作る高性能COMコンポーネント
Programmer's SELECTION
とりあえず、土日の間に読んでおきます。
さらに VC++ の起動方法まで解説いただき痛み入ります。
お教え頂いた方法に則って作業に入りたいと思います。
これで来週から端末を使っての作業に入れそうです。
まだまだ障害は多そうですが始めてみます。
>> ATL COMプログラミング —
>> ATLとVisualC++で作る高性能COMコンポーネント
>> Programmer's SELECTION
読んでどう思うかはあなた次第か。
もちろん値段相当の本だと思います。
http://www.amazon.co.jp/exec/obidos/ASIN/4881356992/qid%3D1102672758/249-5407720-7299534#product-details
>> Visual C++プログラマのためのCOM入門 —
>> はじめるWindowsシステムプログラミング DeV selection
これはもっていないので不明です。
http://www.amazon.co.jp/exec/obidos/ASIN/4881357557/qid%3D1102672628/249-5407720-7299534#product-details
書店で見て選んだのならあなたの目を信じてください。
ツイート | ![]() |