都内で働くSEの技術的なひとりごと

都内でサラリーマンやってます。マイクロソフト系(たまに、OSS系などマイクロソフト以外の技術も...)の技術的なことについて書いています。日々の仕事の中で、気になったことを技術要素関係なく気まぐれに選んでいるので記事内容は開発言語、インフラ等ばらばらです。なお、当ブログで発信、発言は私個人のものであり、所属する組織、企業、団体等とは何のかかわりもございません。ブログの内容もきちんと検証して使用してください。よろしくお願いします♪

【『 Google Chrome Frame をチェックしていたら、BHO ( Browser Helper Object ) が気になってきた 』 ので、C++、ATL を使って実装してみた】 の補足です

 『 Google Chrome Frame をチェックしていたら、BHO ( Browser Helper Object ) が気になってきた 』 ので、C++、ATL を使って実装してみた の補足です。この記事で以下のように記載しました。

まず、COM 開発の基本となる、インターフェース定義を行います。インターフェースの定義は、IDL ( Interface Definition Language ) を使用します。( C# とはかなり勝手が違いますね。くじけずに読んでください。 ) プロジェクト中に、BHO_Sample.idl というファイルが存在します。内容は下記の通りです。ATL の各種設定は、IDL ベースでしか出来なくなったのでしょうか?

 そんなわけないです。ちゃんとウィザードが存在します。(嘘ついてすいません。私は手入力するのに結構苦労しました。)

 手順は下記の通りです。クラスの追加で、ATL シンプルオブジェクトを選択し、Add をクリックします。

f:id:koogucc11:20140103221106p:plain

 Short name に BHOSample と入力します。それ以外の項目は自動的に入力されます。Next をクリックします。

f:id:koogucc11:20140103221311p:plain

 Next をクリックします。

f:id:koogucc11:20140103221425p:plain

 BHO なので IObjectWithSite にチェックを入れて、Finish をクリックします。

f:id:koogucc11:20140103221519p:plain

 上記の手順で、COM のマップ、idl の定義、レジストリ登録スクリプト等手入力が面倒なものがすべて生成されます。便利ですねー、当たり前か...