Funkce zpětného volání
Funkce zpětného volání je kód ve spravované aplikaci, která pomáhá nespravované funkci KNIHOVNY DLL dokončit úlohu. Volání funkce zpětného volání předávají nepřímo ze spravované aplikace, prostřednictvím funkce KNIHOVNY DLL a 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í, a to v dokumentaci pro funkci. Dále musíte ve spravované aplikaci vytvořit funkci zpětného volání. Nakonec zavoláte funkci KNIHOVNY DLL a jako argument předáte ukazatel na funkci zpětného volání.
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í.