質問: Win32 APIと.NET Frameworkの違いを教えてください あとGUIアプリを作るのはどちらがお勧めでしょうか? それぞれのメリットを教えていただけると幸いです
回答: 簡単に言うと、Win32 API は Windows の機能を他のプログラムから呼び出すことができるようにしたものです。古いものは関数の形で実装されていますが、比較的新しいものは COM という仕組みになっています。 COM : Compnent Object Model .NET Framework は、プログラムを作りやすいように(プログラムから使いやすいように)、Win32 API と同等の機能をクラスライブラリとしてまとめたもの。クラスライブラリの中から Win32 API を呼び出している場合があります。 GUI プログラムを作るのは .NET Framework を使う方がお手軽です。 .NET Framework を使用しないプログラム ( Win32 API を使用したプログラム ) では、メモリの取得・開放をプログラミングで行わなければならないのですが、.NET Framework を使用したプログラムではメモリの開放は自動的におこなってくれるのでメモリ管理も楽になります。 しかし、.NET Framework だけでは実装できないこともあります。そうした場合、該当部分だけ Win32 API を使用すると実現可能となることがあります。該当部分だけ Win32 API を使用する場合、Win32 API が使用するメモリについては自動的に開放されることはないので、そのメモリ領域については取得・開放をプログラミングで行わなければなりません。