Out of Memory

ごめん、忘れてた。

目次

Blog 利用状況

ニュース

2008年7月1日
Microsoft MVP for Developer Tools - Visual C++ を再受賞しました。
2008年2月某日
MVPアワードがVisual C++に変更になりました。
2007年10月23日
blogタイトルを変更しました。
2007年7月1日
Microsoft MVP for Windows - SDKを受賞しました!
2007年6月20日
スキル「ニュース欄ハック」を覚えた!
2006年12月14日
記念すべき初エントリ
2006年12月3日
わんくま同盟に加盟しました。

カレンダー

中の人

シャノン@わんくま同盟北埼玉支部

顔写真

埼玉を馬鹿にする奴は俺が許さん。

基本的に知ったかぶり。興味を持った技術に手を出して、ちょっと齧りはするものの、それを応用して何か形にするまでは及ばずに飽きて放り出す人。

Microsoft MVP for Windows SDK July 2007 - February 2008, Microsoft MVP for Visual C++ February 2008 - June 2009
Microsoft MVP for Windows SDK
July 2007 - February 2008
Microsoft MVP for Visual C++
February 2008 - June 2009

アクセサリ

あわせて読みたい

e-Words

アフィリエイト

記事カテゴリ

書庫

日記カテゴリ

で、このブログですが。

サブタイトルにもあるとおり、.NETでCOMを扱うプログラミングをメインに取り上げて行きたいと思います。
と言っても、いわゆる「COM相互運用」とかの話ではございません。
メインはアンマネージドCOM。どのへんが.NETなのかと言うと、内部実装に.NET Frameworkを使うというだけのことです。だってあんな豪華なライブラリを使わないのはもったいないですもの…。
#実はそれ以外にももうひとつ、ファイル形態をマネージドアセンブリにするメリットはあるんですが、それはまた後程。

言語はC++とC++/CLIを使います。COMの基礎を解説するときには基本に忠実なC++/Nativeを、実際にモノを作るときはC++/CLIをと使い分けますが、.NET Frameworkは道具として使うだけで、Managed Classは使いません(作りません)。
#もちろんIDLも手書きですよ。

はじめはCOMの基礎から。だんだんとOLE等にも踏み入って行きます。
いずれは、Windowsのシェル拡張プログラムを作るところまで行く予定です。
Vistaが登場しても、シェル拡張はまだアンマネージドのまま。ここを攻略するのに、C++/CLIはうってつけな言語というわけです。

シェル拡張のように、既に他人が定義しているアンマネージドインターフェイスを実装する必要がある場合、Win32 SDKが定義している大量のアンマネージドインターフェイスを、マネージド言語で再定義しなければなりません。
昔の.NET Frameworkのクイックスタート チュートリアルには、C#でシェル拡張を作るサンプルが入っていましたが、コードのほとんどがP/Invokeで、「こんなんC#じゃないやい!」と放り出したことがあります。あのサンプルに復讐する時が来たのです…(意味不明)。

なお、実装にあたりMFCやATLは使いません。COM相互運用と同様、こいつらはCOMの基礎を覆い隠してしまうからです。…というのは建て前で、俺がこれらを使ったCOM作りをさっぱり理解していないからです。

なかなか異色の試みかとは思いますが、既に被っていたら申し訳ない…。その時はご指摘くださいませ。

投稿日時 : 2006年12月15日 13:03

Feedback

# re: で、このブログですが。 2006/12/15 18:48 じゃんぬねっと

かなり異色ですねw
でも、こういう方がいた方が面白いでしょう。

# re: で、このブログですが。 2006/12/15 22:20 とっちゃん

最近、COMから遠ざかりつつありますw

でも、まだまだ離れることができないから、チョー期待w

タイトル  
名前  
Url
コメント