Uso di CPLApplet
Prima di Windows Vista, è stato creato un elemento Pannello di controllo creando un file .dll e assegnandogli un nome con un'estensione .cpl. Questo file ha esportato la funzione CPlApplet. Questo schema è ancora supportato in Windows Vista e versioni successive ed è illustrato in questo argomento. Tuttavia, le linee guida per i nuovi elementi Pannello di controllo consigliano un approccio più semplice con l'elemento Pannello di controllo creato come file .exe che usa un layout del flusso di attività.
Quando Pannello di controllo carica un file di .dll (o .cpl), chiama la funzione CPlApplet per ottenere informazioni quali il numero di Pannello di controllo elementi degli host file, nonché informazioni su ogni elemento. Pannello di controllo chiama anche la funzione quando la finestra dell'elemento viene inizializzata, aperta o chiusa.
Quando Windows carica per la prima volta l'elemento Pannello di controllo, recupera l'indirizzo della funzione CPlApplet e successivamente lo usa per chiamare la funzione e passarlo messaggi. Potrebbe inviare i messaggi seguenti.
Message | Descrizione |
---|---|
CPL_DBLCLK | Inviato per notificare a CPlApplet che l'utente ha scelto l'icona associata a un determinato elemento Pannello di controllo. CPlApplet deve visualizzare la finestra di dialogo per l'elemento specificato ed eseguire qualsiasi attività specificata dall'utente. Il parametro CPlApplet lParam1 è un numero intero che rappresenta l'indice in base zero dell'elemento Pannello di controllo. Il parametro lParam2 è il puntatore lpData restituito nella struttura CPLINFO o NEWCPLINFO nel messaggio CPL_INQUIRE o CPL_NEWINQUIRE. Il valore restituito viene ignorato. |
CPL_EXIT | Inviato dopo l'ultimo messaggio di CPL_STOP e immediatamente prima che Windows usi la funzione FreeLibrary per liberare la DLL che contiene l'elemento Pannello di controllo. CPlApplet deve liberare qualsiasi memoria rimanente e prepararsi alla chiusura. Il valore restituito viene ignorato. |
CPL_GETCOUNT | Inviato dopo il messaggio CPL_INIT per richiedere a CPlApplet di restituire un numero che indica il numero di sottogrammi supportati. |
CPL_INIT | Inviato immediatamente dopo il caricamento della DLL contenente l'elemento Pannello di controllo. Il messaggio richiede a CPlApplet di eseguire le procedure di inizializzazione, inclusa l'allocazione della memoria. |
CPL_INQUIRE | Inviato dopo il messaggio di CPL_GETCOUNT per richiedere a CPlApplet di fornire informazioni su un sottogramma specificato. Il valore lParam1 è un numero intero che rappresenta l'indice in base zero del sottogramma relativo alle informazioni richieste. Il parametro lParam2 di CPlApplet punta a una struttura CPLINFO . Il valore restituito viene ignorato. |
CPL_NEWINQUIRE | Inviato dopo il messaggio di CPL_GETCOUNT per richiedere a CPlApplet di fornire informazioni su un elemento Pannello di controllo specificato. Il valore lParam1 è un numero intero che rappresenta l'indice in base zero del sottogramma relativo alle informazioni richieste. Il parametro lParam2 è un puntatore a una struttura NEWCPLINFO. CPL_NEWINQUIRE normalmente deve essere ignorato. L'applicazione deve elaborare solo CPL_INQUIRE nei sistemi Windows 95, Microsoft Windows NT 4.0 e versioni successive, perché le prestazioni di Pannello di controllo risentono quando si usa CPL_NEWINQUIRE. Ciò è dovuto al fatto che le stringhe restituite e le icone non possono essere memorizzate nella cache. Il valore restituito viene ignorato. |
CPL_SELECT | Obsoleta. Le versioni correnti di Windows non inviano questo messaggio. |
CPL_STARTWPARMS | Inviato per notificare a CPlApplet che l'utente ha scelto l'icona associata a una determinata finestra di dialogo. CPlApplet deve visualizzare la finestra di dialogo corrispondente ed eseguire qualsiasi attività specificata dall'utente. Questo messaggio è simile a CPL_DBLCLK, ma potrebbero esserci alcune informazioni aggiuntive. Il parametro lParam1 è il numero di elemento Pannello di controllo e lParam2 è un LPCTSTR per qualsiasi indicazione aggiuntiva che potrebbe essere necessaria. Restituisce TRUE se il messaggio viene gestito; in caso contrario, FALSE. Questo messaggio è valido per la versione 5.00 e successive di Shell32.dll. |
CPL_STOP | Inviato una volta per ogni elemento Pannello di controllo nel file .cpl prima che Windows scarichi l'estensione Pannello di controllo. CPlApplet deve liberare qualsiasi memoria associata al numero di elemento fornito in lParam1. Il parametro lParam2 è il puntatore lpData restituito nella struttura CPLINFO o NEWCPLINFO nel messaggio CPL_INQUIRE o CPL_NEWINQUIRE. Il valore restituito viene ignorato. |
Argomenti correlati
-
Estensione degli elementi di Pannello di controllo di sistema
-
Creazione di collegamenti attività ricercabili per un elemento Pannello di controllo
-
Accesso al Pannello di controllo in modalità provvisoria in Windows Vista