簡介
應用程式接口為:“‘電腦
作業系統(Operating system)’或‘
程式庫’提供給應用程式調用使用的代碼”。其主要目的是讓應用程式開發人員得以調用一組
例程功能,而無須考慮其底層的原始碼為何、或理解其內部工作機制的細節。API本身是
抽象的,它僅定義了一個
接口,而不涉及應用程式在實際實現過程中的具體操作。
例如,圖形
庫中的一組API定義了繪製
指針的方式,可於圖形輸出設備上顯示指針。當應用程式需要指針功能時,可在引用、
編譯時連結到這組API,而運行時就會調用此API的實現(庫)來顯示指針。
應用程式接口是一組數量上千、極其複雜的函式和副程式,可讓程式設計師做很多任務作,譬如“讀取檔案”、“顯示選單”、“在視窗中顯示網頁”等等。
作業系統的API可用來分配
存儲器或讀取
檔案。許多系統應用程式藉由API接口來實現,像是
圖形系統、
資料庫、網路
Web服務,甚至是線上遊戲。
應用程式接口有諸多不同設計。用於快速執行的接口通常包括
函式、
常量、
變數與
數據結構。也有其它方式,如通過
解釋器,或是提供抽象層以禁止同API實現相關的信息,確保使用API的代碼無需更改而適應實現變化。
目的
A reference implementation of an API is the implementation created by the designer of the API, or one which other implementations of the API are expected to be compared against.
例如,圖形庫中的一組API定義調用繪製圖示函式的方式,以於
螢幕上顯示圖示。程式中調用,編譯時連線到這組API,執行時便調用API的實現(庫)來顯示圖示。
作業系統的API可用來分配記憶體或訪問檔案。許多系統與應用程式提供API接口與實現,比如
圖形系統,資料庫,網路,Web服務,甚至於某些遊戲。
一組API經常是一套
軟體開發工具包(SDK)的一部分。SDK亦可包含其它工具亦或至於硬體,兩個術語並不完全等同.
API有諸多不同設計。用於快速執行的接口通常包括函式,
常量,
變數與數據結構。也有其它方式,如通過
解釋器,或是提供抽象層以遮蔽同API實現相關的信息,確保使用API的代碼無需更改而適應實現變化。
API 就是應用程式編程接口。它是能用來操作組件、應用程式或者作業系統的一組函式。典型的情況下,API 由一個或多個提供某種特殊功能的 DLL 組成。
DLL 是一個檔案,其中包含了在 Microsoft® Windows® 下運行的任何應用程式都可調用的函式。運行時,DLL 中的函式動態地連結到調用它的應用程式中。無論有多少應用程式調用 DLL 中的某個函式,在
磁碟上只有一個檔案包含該函式,且只在它調入記憶體時才創建該 DLL。
您聽到最多的 API 可能是 Windows API,它包括構成 Windows 作業系統的各種 DLL。每個 Windows 應用程式都直接或間接地與 Windows API 互動。Windows API 保證 Windows 下運行的所有應用程式的行為方式一致。
注意
隨著 Windows 作業系統的發展,現已發布了幾個版本的 Windows API。Windows 3.1 使用 Win16 API。Microsoft® Windows NT®、Windows 95 和 Windows 98 平台使用 Microsoft® Win32® API。
除 Windows API 外,其他一些 API 也已發布。例如,郵件應用程式編程接口 (MAPI) 是一組可用於編寫電子郵件應用程式的 DLL。
API 傳統上是為開發 Windows 應用程式的 C 和 C++ 程式設計師編寫的,但其他的
程式語言(包括VBA)也可以調用 DLL 中的函式。因為大部分 DLL 主要是為 C 和 C++ 程式設計師編寫和整理說明的,所以調用 DLL 函式的方法與調用 VBA 函式會有所不同。在使用 API 時必須了解如何給 DLL 函式傳遞參數。
警告 調用 Windows API 和 其他 DLL 函式可能會給您的應用程式帶來不良影響。從自己的代碼中直接調用 DLL 函式時,您繞過了 VBA 通常提供的一些安全機制。如果在定義或調用 DLL 函式時出現錯誤(所有程式設計師都不可避免),可能會在應用程式中引起應用程式錯誤(也稱為通用性保護錯誤,或 GPF)。最好的解決辦法是在運行代碼以前保存該項目,並確保了解 DLL
函式調用的原理。