ふと、System.Windows.Formsを参照せずにWin32APIのみでウィンドウズアプリ作れないかな?と思いました。
メッセージボックスを表示する辺りまでは余裕で出来たのですが、ウィンドウを表示してメインループを回すまでは出来ませんでした。ギブアップです。
Win32APIとC#の型の対応がさっぱりわけわかめです。MSDN漁ってもまとまった資料は見付かりません。プラットフォームSDKのヘッダファイルを見れば簡単に分かるらしいのですが、先日ハードディスクの容量節約の為にVC++ Express Editionもろともアンインスコしちゃいました。
4時間程格闘して、
『Win32API使うなら素直にC++で書いた方が楽そう』
と思いました。でも、C++って何でこんなにも主流なんでしょう?低水準に近いCを無理やり抽象化してオブジェクト指向にした様な強い違和感があります。
入門サイトを読んで、書いてあることは理解出来るのですが、じゃぁ書けるか?と言ったら絶対無理です。C++でウィンドウズアプリをゴリゴリと書ける人の脳内を覗いてみたいです。
そうそう、Win32APIを片っ端からDllImportしまくった.NETのクラスライブラリとかあったら欲しいです。