『 Google Chrome Frame をチェックしていたら、BHO ( Browser Helper Object ) が気になってきた 』 ので、C++、ATL を使って実装してみた の補足です。この記事で以下のように記載しました。
まず、COM 開発の基本となる、インターフェース定義を行います。インターフェースの定義は、IDL ( Interface Definition Language ) を使用します。( C# とはかなり勝手が違いますね。くじけずに読んでください。 ) プロジェクト中に、BHO_Sample.idl というファイルが存在します。内容は下記の通りです。ATL の各種設定は、IDL ベースでしか出来なくなったのでしょうか?
そんなわけないです。ちゃんとウィザードが存在します。(嘘ついてすいません。私は手入力するのに結構苦労しました。)
手順は下記の通りです。クラスの追加で、ATL シンプルオブジェクトを選択し、Add をクリックします。
Short name に BHOSample と入力します。それ以外の項目は自動的に入力されます。Next をクリックします。
Next をクリックします。
BHO なので IObjectWithSite にチェックを入れて、Finish をクリックします。
上記の手順で、COM のマップ、idl の定義、レジストリ登録スクリプト等手入力が面倒なものがすべて生成されます。便利ですねー、当たり前か...