Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Funkcja CPlApplet wywołania zwrotnego przetwarza wszystkie komunikaty wysyłane do elementu Panelu sterowania przez system Windows. Komunikaty wysyłane do funkcji są w określonej kolejności. Za pomocą tego samego tokenu element .cpl wymaga przetworzenia komunikatów w określony sposób.
Najpierw funkcja CPlApplet odbiera komunikat CPL_INIT, gdy system Windows najpierw ładuje element Panelu sterowania. Funkcja powinna wykonywać wszelkie inicjowanie, takie jak przydzielanie pamięci i zwracanie wartości niezerowej. Jeśli CPlApplet nie może ukończyć inicjowania, musi zwrócić zero, kierując system Windows do zakończenia komunikacji i zwolnienia biblioteki DLL.
Następnie, jeśli komunikat CPL_INIT zakończył się pomyślnie, system Windows wysyła komunikat CPL_GETCOUNT. Następnie funkcja musi zwrócić liczbę elementów Panelu sterowania obsługiwanych przez plik .dll.
FunkcjaCPlAppletnastępnie odbiera jeden komunikat CPL_INQUIRE i jeden komunikat CPL_NEWINQUIRE dla każdego elementu Panelu sterowania obsługiwanego przez plik .dll. Funkcja wypełnia strukturę CPLINFO lub NEWCPLINFO informacjami dotyczącymi Twojego elementu, takimi jak jego nazwa, ikona i opisowy ciąg znaków. Większość aplikacji powinna przetwarzać komunikat CPL_INQUIRE i ignorować komunikat CPL_NEWINQUIRE. Komunikat CPL_INQUIRE zawiera informacje w postaci, którą system Windows może buforować, co skutkuje znacznie lepszą wydajnością. Komunikat CPL_NEWINQUIRE jest używany tylko wtedy, gdy trzeba zmienić ikonę elementu lub wyświetlić ciągi na podstawie stanu komputera. Nie można znaleźć elementów Panelu sterowania korzystających z CPL_NEWINQUIRE za pomocą wyszukiwania w menu Start w systemie Windows Vista, ponieważ korzysta z buforowania.
Następnie funkcja CPlApplet odbiera komunikat CPL_DBLCLK jako powiadomienie, że użytkownik wybrał ikonę reprezentującą element Panelu sterowania. Ta funkcja może odbierać tę wiadomość dowolną liczbę razy. Komunikat zawiera identyfikator elementu oraz wskaźnik lpData zwrócony w strukturze CPLINFO lub NEWCPLINFO podczas wywołania CPL_INQUIRE lub CPL_NEWINQUIRE. Funkcja powinna wyświetlić odpowiednie okno dialogowe i przetworzyć kolejne dane wejściowe użytkownika.
Oprócz CPL_DBLCLK można wysłać komunikat CPL_STARTWPARMS, jeśli element Panelu sterowania jest wywoływany z wiersza polecenia lub z innego programu z parametrami wejściowymi. Komunikat zawiera identyfikator elementu wraz z dodatkowym ciągiem parametru.
Przed zakończeniem kontrolowania aplikacji CPlApplet odbiera komunikat CPL_STOP raz dla każdego elementu Panelu sterowania obsługiwanego przez plik .dll. Komunikat zawiera identyfikator elementu Panel Sterowania i wskaźnik lpData zwrócony w CPLINFO lub NEWCPLINFO struktury w wywołaniu CPL_INQUIRE lub CPL_NEWINQUIRE. Funkcja powinna zwolnić dowolną pamięć przydzieloną dla określonego okna dialogowego.
Po ostatnim komunikacie CPL_STOP, CPlApplet odbiera komunikat CPL_EXIT. Funkcja powinna zwolnić całą pozostałą przydzieloną pamięć oraz wyrejestrować wszelkie zarejestrowane klasy okien prywatnych. Natychmiast po powrocie funkcji z tego komunikatu system Windows zwalnia element Panelu sterowania, wywołując funkcję FreeLibrary.
Tematy pokrewne
-
Korzystanie z CPLApplet
-
tworzenie linków zadań z możliwością wyszukiwania dla elementu Panelu sterowania
-
uzyskiwanie dostępu do Panelu sterowania w trybie awaryjnym w systemie Windows Vista