Funkcje wywołania zwrotnego

Funkcja wywołania zwrotnego to kod w aplikacji zarządzanej, który pomaga niezarządzanej funkcji DLL wykonać zadanie. Wywołania funkcji wywołania zwrotnego są przekazywane pośrednio z aplikacji zarządzanej za pośrednictwem funkcji DLL i z powrotem do implementacji zarządzanej. Niektóre z wielu funkcji DLL wywoływanych za pomocą wywołania platformy wymagają funkcji wywołania zwrotnego w kodzie zarządzanym w celu poprawnego uruchomienia.

Aby wywołać większość funkcji DLL z kodu zarządzanego, należy utworzyć zarządzaną definicję funkcji, a następnie wywołać ją. Proces jest prosty.

Korzystanie z funkcji DLL, która wymaga funkcji wywołania zwrotnego, ma kilka dodatkowych kroków. Najpierw należy określić, czy funkcja wymaga wywołania zwrotnego, przeglądając dokumentację funkcji. Następnie należy utworzyć funkcję wywołania zwrotnego w aplikacji zarządzanej. Na koniec wywołasz funkcję DLL, przekazując wskaźnik do funkcji wywołania zwrotnego jako argument.

Poniższa ilustracja zawiera podsumowanie funkcji wywołania zwrotnego i kroków implementacji:

Diagram showing the platform invoke callback process.

Funkcje wywołania zwrotnego są idealne do użycia w sytuacjach, w których zadanie jest wykonywane wielokrotnie. Innym typowym użyciem jest użycie funkcji wyliczania, takich jak EnumFontFamilies, EnumPrinters i EnumWindows w interfejsie API systemu Windows. Funkcja EnumWindows wylicza wszystkie istniejące okna na komputerze, wywołując funkcję wywołania zwrotnego w celu wykonania zadania w każdym oknie. Aby uzyskać instrukcje i przykład, zobacz Instrukcje: implementowanie funkcji wywołania zwrotnego.

Zobacz też