読者です 読者をやめる 読者になる 読者になる

COMのはなし

ATLのプロジェクトを作ってから、CHogeとか実装してくわけですが、まあCHugaがあったとしましょう。んで、CHogeとCHugaの間で、CFooをやり取りしたい。ところがこのCFooは既存のC++ライブラリのクラスなので、外からは見えないわけです。どうしたらいいのか。

よくわからないので、とりあえずIUnknownにreinterpret_castしまくりで、IDLの方でrestrictedとか書いてみたらメソッドが外から見えなくなったのでまあ大丈夫かな、とか、ごまかしてるわけですが、絶対おかしい気がします。しかもなんかの拍子にVisual C++が発狂して、CHogeの実装が見えなくなったりする。とみずしまくんに話してみたら、それはC++にマクロがあるのがいけないとかなんとかかんとか。俺はそんなことが言いたいんじゃない(笑)。

ついでに多分メモリリークしまくりなので、なんとかしないと。(deleteって一回も書いてない)


いやになってきた。