共用方式為


回調函式 (Callback Functions)

回調函式是 Managed 應用程式內的程式碼,可協助 Unmanaged DLL 函式完成工作。 呼叫回調函式會透過 DLL 函式間接從受管理的應用程式傳遞,然後傳回受管理的實作。 使用平台調用的許多 DLL 函式,需要託管碼中的回呼函式才能正常執行。

若要從 Managed 程式代碼呼叫大部分的 DLL 函式,您可以建立函式的 Managed 定義,然後呼叫它。 此程序很簡單。

使用需要回調函數的 DLL 函式有一些額外的步驟。 首先,您必須查看函式的檔,判斷函式是否需要回呼。 接下來,您必須在受控應用程式中建立回調函式。 最後,您呼叫 DLL 函式,將指標傳遞至回呼函式做為自變數。

下圖摘要說明回呼函式和實作步驟:

顯示平台調用回呼程式的圖表。

回呼函式很適合用於重複執行工作的情況。 另一個常見用途是列舉函式,例如 EnumFontFamiliesEnumPrinters,以及 EnumWindows Windows API 中。 這個 EnumWindows 函式會列舉你電腦上所有現有的視窗,並呼叫回調函式在每個視窗執行任務。 如需指示和範例,請參閱 如何:實作回調函式

另請參閱