Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Funkce zpětného volání je kód ve spravované aplikaci, který pomáhá nespravované funkci DLL dokončit úlohu. Nepřímé předávání volání funkce zpětného volání probíhá ze spravované aplikace přes funkci DLL knihovny zpět do spravované implementace. Některé z mnoha funkcí knihovny DLL volaných pomocí volání platformy vyžadují správné spuštění funkce zpětného volání ve spravovaném kódu.
Chcete-li volat většinu funkcí knihovny DLL ze spravovaného kódu, vytvoříte spravovanou definici funkce a pak ji zavoláte. Proces je jednoduchý.
Použití funkce knihovny DLL, která vyžaduje funkci zpětného volání, má několik dalších kroků. Nejprve musíte určit, jestli funkce vyžaduje zpětné volání, podívat se do dokumentace funkce. Dále musíte ve spravované aplikaci vytvořit funkci zpětného volání. Nakonec zavoláte funkci DLL a jako argument předáte ukazatel na delegovanou funkci.
Následující obrázek shrnuje funkci zpětného volání a kroky implementace:
Funkce zpětného volání jsou ideální pro použití v situacích, kdy se úloha provádí opakovaně. Dalším běžným použitím jsou funkce výčtu, jako jsou EnumFontFamilies, EnumPrinters a EnumWindows v rozhraní API systému Windows. Funkce EnumWindows vyčísluje všechna existující okna v počítači a volá funkci zpětného volání, která provede úlohu v každém okně. Pokyny a příklad najdete v tématu Postupy: Implementace funkcí zpětného volání.