2ntブログ
短期合宿
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
IEツールバー
この前メッセでIEツールバーの話をしたので調べてみることに。
貧乏なんでExpress Editionでのコンパイル覚書

●ツールバーの情報
こちらのサイトのサンプルに到着。とりあえずこれを動かすことに。
http://www.codeproject.com/KB/wtl/toolband.aspx

●環境構築
・VC++ 2005 Express Edition(昔入れたままになってたので2005。もう2008が出てるとか)
・WindowsSDKインストール
・WTLインストール
この辺はググると分かりやすいサイトがいっぱい出てきた。

●コンパイル
上記サイトからプロジェクトダウンロード
コンパイル
VC++6用プロジェクトなのでエラー

・エラー
ToolBand.rcの"winres.h"が見つからない

C:\Program Files\Microsoft Platform SDK\Include\mfc
をインクルードパスに追加

・再コンパイル。エラー
BandEditCtrl.obj : error LNK2019: 未解決の外部シンボル "wchar_t * __stdcall _com_util::ConvertStringToBSTR(char const *)" (?ConvertStringToBSTR@_com_util@@YGPA_WPBD@Z) が関数 "public: __thiscall _bstr_t::Data_t::Data_t(char const *)" (??0Data_t@_bstr_t@@QAE@PBD@Z) で参照されました。
BandToolBarCtrl.obj : error LNK2001: 外部シンボル ""wchar_t * __stdcall _com_util::ConvertStringToBSTR(char const *)" (?ConvertStringToBSTR@_com_util@@YGPA_WPBD@Z)" は未解決です。
BandEditCtrl.obj : error LNK2019: 未解決の外部シンボル "char * __stdcall _com_util::ConvertBSTRToString(wchar_t *)" (?ConvertBSTRToString@_com_util@@YGPADPA_W@Z) が関数 "public: char const * __thiscall _bstr_t::Data_t::GetString(void)const " (?GetString@Data_t@_bstr_t@@QBEPBDXZ) で参照されました。
.\Debug/ToolBand.dll : fatal error LNK1120: 外部参照 2 が未解決です。

BandEditCtrl.cpp
の頭の辺りに
#include <comutil.h> //記事修正。<>がHTMLタグ扱いになってて表示されてなかった
#pragma comment(lib, "comsupp.lib")
#pragma comment(lib, "comsuppw.lib")
を追加

とりあえず
エラー 0、警告 11
コンパイル完了
ToolBar.dll生成される

IEのメニューバーの何もないところで右クリック
メニューに追加されてる「ToolBandSample」にチェックを入れる。

出たー
新規キャンバス

ところがIEを終了させるとDebugエラー
なのでビルドを
ReleaseMinDependency
に変更して再コンパイル。OK

とりあえず動いたのでここまで
一番肝心な物、ツールバーで作りたいネタがなかったりして。