WinRTとはマイクロソフトの開発したプラットフォームで、Windows 10などで採用されているユニバーサルプラットフォームアプリ(いわゆる Modern UI)のベースとなるAPIです。Windows Runtimeの略称となります。このページではWinRTと従来の開発APIのメインである Win32 APIとの違い、及びMFCやCOMとの違いに関して説明します。
スポンサーリンク
名前 | 呼び出し方法 | インターフェース | 実態 | 主な用途 |
WinRT(Windows Runtime) | winmd ファイルの定義経由 | オブジェクト指向 | ・実態はC:\Windows\system32 フォルダ内の以下ファイルです。 Windows.*.dll ただしアプリはこれらを直接呼び出すことはできません。 ・winmd ファイルで定義されています。これ経由呼び出します。以下に保管されています。 C:\Windows\System32\WinMetadata これらのファイルは .Net,JavaScript,C++などが共通で理解できます。 |
WinRT ランタイムで使用します。(サンドボックス)。 |
Win32 API(Application Program Interface) | dll のエントリポイントを直接呼出し | C言語型のI/F | ・GDI32.dll、Kernel32.dll、User32.dll 、COMCTL32.DLL、WS2_32.DLL、ADVAPI32.DLL、NETAPI32.DLL ・CやC++以外(VBなど)からも呼び出すことは可能。 |
主にWindows ネーティブアプリで使用します。 |
MFC(Microsoft Foundation Class library) | クラスライブラリとして使用(主にWin32APIのラッパー) | C++インターフェース | dll(Visual Studioインストールあるいはランタイム版として無償配布されているものを入手) | マイクロソフトに特化したライブラリです。便利ですが多用すると他のOSに移植が困難となります。 |
COM(Common Object Model) | dllやocx をコール | オブジェクト指向 | ・regsvr32 で COMコンポーネントを登録します。 ・COMはレジストリに登録されています。(HKEY_LOCAL_MACHINE/Software/Classes ) ・COMの実態は定義されたクラスのインスタンスであり、オブジェクト指向型です。 ・oleview というツールで登録済のcom一覧の確認が可能です。 (oleview は無料SDKよりインストール可能) |
汎用 |
スポンサーリンク
[開発言語に戻る]