Systemsteuerung Nachrichtenverarbeitung
Die CPlApplet-Rückruffunktion verarbeitet alle Nachrichten, die an ein Systemsteuerung-Element gesendet werden, Windows. Nachrichten, die an die Funktion gesendet werden, befinden sich in einer bestimmten Reihenfolge. Mit demselben Token erfordert das .cpl, dass die Nachrichten auf eine bestimmte Weise verarbeitet werden.
Zunächst empfängt die CPlApplet-Funktion die CPL-INIT-Nachricht, wenn Windows zum ersten Mal _ das Systemsteuerung lädt. Die Funktion sollte alle Initialisierungen durchführen, z. B. das Zuweisen von Arbeitsspeicher, und einen Nicht-Null-Rückgabe ungleich 0 (null) zurückgeben. Wenn CPlApplet die Initialisierung nicht abschließen kann, muss es 0 (null) zurückgeben, Windows die Kommunikation zu beenden und die DLL frei zu geben.
Wenn die CPL-INIT-Nachricht erfolgreich war, sendet Windows _ CPL _ GETCOUNT-Nachricht. Die Funktion muss dann die Anzahl der Systemsteuerung elemente zurückgeben, die von der .dll werden.
Die CPlApplet-Funktion empfängt dann eine CPL-NACHRICHT UND eine _ CPL NEWINQUIRE-Nachricht für jedes Systemsteuerung element, das von der .dll _ wird. Die Funktion füllt eine CPLINFO- oder NEWCPLINFO-Struktur mit Informationen zu Ihrem Element auf, z. B. name, icon und eine beschreibende Zeichenfolge. Die meisten Anwendungen sollten die _ CPL-Nachricht ZU 100000000000 CPL _ NEWINQUIRE-Nachrichten verarbeiten und ignorieren. Die CPL-Nachricht FÜR DIE 1000-Nachricht stellt Informationen in einer Form zur Verfügung, Windows zwischengespeichert werden kann, was _ zu einer wesentlich besseren Leistung führt. Die CPL NEWINQUIRE-Nachricht wird nur verwendet, wenn Sie das Symbol Ihres Elements oder die Anzeigezeichenfolgen basierend auf dem Zustand des _ Computers ändern müssen. Systemsteuerung elemente, die CPL NEWINQUIRE verwenden, können bei der Suche im Startmenü in Windows Vista nicht gefunden werden, da sie auf _ der Zwischenspeicherung basiert.
Die CPlApplet-Funktion empfängt als Nächstes eine CPL-DBLCLK-Nachricht als Benachrichtigung, dass der Benutzer das Symbol ausgewählt hat, das das Systemsteuerung _ darstellt. Die Funktion kann diese Nachricht mehrmals empfangen. Die Nachricht enthält den Elementbezeichner und den lpData-Zeiger, die in der CPLINFO- oder NEWCPLINFO-Struktur im Aufruf von CPL _ BZW. _ NEWINQUIREzurückgegeben werden. Die Funktion sollte das entsprechende Dialogfeld anzeigen und nachfolgende Benutzereingaben verarbeiten.
Neben CPL DBLCLK kann die _ CPL STARTWPARMS-Nachricht gesendet werden, wenn ein Systemsteuerung-Element mit Eingabeparametern aufgerufen wird, z. B. über eine Eingabeaufforderung oder ein anderes _ Programm. Die Meldung enthält den Elementbezeichner zusammen mit der zusätzlichen Parameterzeichenfolge.
Bevor die steuernde Anwendung beendet wird, empfängt CPlApplet die CPL-STOP-Nachricht einmal für jedes Systemsteuerung element, das von der .dll _ wird. Die Nachricht enthält den Bezeichner für das Systemsteuerung-Element und den lpData-Zeiger, der in der CPLINFO- oder NEWCPLINFO-Struktur im Aufruf von CPL _ BZW. _ NEWINQUIREzurückgegeben wird. Die Funktion sollte jeglichen Arbeitsspeicher, den sie dem angegebenen Dialogfeld zugeordnet hat, frei geben.
Nach der letzten CPL _ STOP-Nachricht empfängt CPlApplet eine CPL _ EXIT-Nachricht. Die Funktion sollte den verbleibenden zugeordneten Arbeitsspeicher frei geben und die Registrierung aller privaten Fensterklassen aufheben, die sie möglicherweise registriert hat. Unmittelbar nachdem die Funktion von dieser Nachricht zurückgegeben wurde, gibt Windows das Systemsteuerung durch Aufrufen der FreeLibrary-Funktion frei.