API とは

Microsoft Office 2000/Visual Basic プログラマーズ ガイド   

API は、"アプリケーション プログラミング インターフェイス (Application Programming Interface)" の略です。API はコンポーネント、アプリケーション、またはアプリケーション システムで作業する際に使用する関数の集合体です。通常、API は特定の機能を持つ 1 つまたは複数の DLL で構成されています。

DLL は、Windows 上で実行されるすべてのアプリケーションによる呼び出しが可能な関数が含まれるファイルです。アプリケーションの実行時には、DLL 内の関数は、呼び出したアプリケーションにダイナミックにリンクししています。DLL 内の 1 つの関数が複数のアプリケーションよって呼び出された場合も、この関数はディスク上の 1 つのファイル内に存在し、メモリ上に DLL が作成されるのは 1 回のみです。

最も一般的に使用されている API は Windows API です。Windows API には、Windows オペレーティング システムを構成する DLL が含まれます。すべての Windows アプリケーションは直接的または間接的に Windows API と対話します。Windows API は、Windows 上で実行するすべてのアプリケーションが一貫した方法で動作することを確認します。

メモ   Windows オペレーティング システムが発展する過程で、いくつかのバージョンの Windows API が発行されています。Microsoft Windows 3.1 プラットフォームでは Win16 API を、Microsoft Windows NT、Microsoft Windows 95、および Microsoft Windows 98 プラットフォームでは Win32 API を使用します。この章では、Win32 API に含まれる関数を中心に説明します。

Windows API のほかにも使用可能な API があります。たとえば、メール アプリケーション プログラミング インターフェイス (MAPI) は、電子メール アプリケーションを記述する際に使用する DLL の集合体です。

通常、API は Windows アプリケーションを作成する C/C++ プログラマ用に記述されていますが、DLL 内の関数は VBA などのほかのプログラミング言語を使用して呼び出すことが可能です。多くの DLL は、C/C++ プログラマを対象に記述および文書化されているので、DLL 関数の呼び出しは VBA 関数の呼び出しとは異なる場合があります。API を使用する前に、引数を DLL 関数に渡す方法を習得する必要があります。

警告   Windows API およびその他の DLL 関数を呼び出す際、アプリケーションに悪影響を与える可能性があります。コードから DLL 関数を直接呼び出すと、VBA で通常使用されるいくつかの安全対策メカニズムが省略されます。すべてのプログラマが経験するように、DLL 関数の設定または呼び出しを間違えると、アプリケーションでアプリケーション エラー (または "一般保護違反" または "GPF" と呼ばれます) が発生する可能性があります。最良の手段として、コードを実行する前にプロジェクトを保存すること、および DLL 関数を呼び出す原則を確認することをお勧めします。