Leggere in inglese

Condividi tramite


Uso delle estensioni della shell

Le funzionalità della shell possono essere estese con voci del Registro di sistema e .ini file. Anche se questo approccio all'estensione della shell è semplice e adeguato per molti scopi, è limitato. Ad esempio, se si usa il Registro di sistema per specificare un'icona personalizzata per un tipo di file, verrà visualizzata la stessa icona per ogni file di quel tipo. L'estensione della shell con il Registro di sistema non consente di variare l'icona per i diversi membri del tipo di file. Altri aspetti della shell, ad esempio la finestra delle proprietà Proprietà che è possibile visualizzare quando si fa clic con il pulsante destro del mouse su un file, non possono essere modificati affatto con il Registro di sistema.

Un approccio più potente e flessibile per estendere shell consiste nell'implementare gestori di estensioni della shell. Questi gestori possono essere implementati per un'ampia gamma di azioni che la shell può eseguire. Prima di eseguire l'azione, Shell esegue una query sul gestore dell'estensione, offrendo la possibilità di modificare l'azione. Un esempio comune è un gestore dell'estensione del menu di scelta rapida. Se ne viene implementato uno per un tipo di file, verrà eseguita una query ogni volta che si fa clic con il pulsante destro del mouse su uno dei file. Il gestore può quindi specificare voci di menu aggiuntive in base al file, anziché avere lo stesso set per tutti i file di quel tipo di file.

Questo set di argomenti illustra come implementare i gestori di estensione che consentono di modificare un'ampia gamma di azioni della shell. I gestori seguenti sono associati a un tipo di file specifico e consentono di specificare in base al file.

Gestore Descrizione
Gestore menu di scelta rapida Chiamato prima che venga visualizzato il menu di scelta rapida di un file. Consente di aggiungere elementi al menu di scelta rapida in base al file.
Gestore dati Chiamato quando viene eseguita un'operazione di trascinamento della selezione su oggetti Shell. Consente di fornire altri formati degli Appunti alla destinazione di rilascio.
Gestore di rilascio Chiamato quando un oggetto dati viene trascinato o rilasciato su un file. Consente di creare un file in una destinazione di rilascio.
Gestore icone Chiamato prima che venga visualizzata l'icona di un file. Consente di sostituire l'icona predefinita del file con un'icona personalizzata in base al file.
Gestore della finestra delle proprietà Chiamato prima che venga visualizzata la finestra delle proprietà Proprietà di un oggetto. Consente di aggiungere o sostituire pagine.
Gestore dell'immagine di anteprima Fornisce un'immagine per rappresentare l'elemento.
Gestore della finestra popup Fornisce testo popup quando l'utente passa il puntatore del mouse sull'oggetto.
Gestore dei metadati Fornisce l'accesso in lettura e scrittura ai metadati (proprietà) archiviati in un file. Può essere usato per estendere la visualizzazione Dettagli, le descrizioni info, la pagina delle proprietà e le funzionalità di raggruppamento.

 

Altri non sono associati a un tipo di file specifico, ma vengono chiamati prima di alcune operazioni della shell.

Gestore Descrizione
Gestore delle colonne Chiamato da Esplora risorse prima di visualizzare la visualizzazione Dettagli di una cartella. Consente di aggiungere colonne personalizzate alla visualizzazione Dettagli.
Gestore hook di copia Chiamato quando un oggetto cartella o stampante sta per essere spostato, copiato, eliminato o rinominato. Consente di approvare o veto l'operazione.
Gestore di trascinamento della selezione Chiamato quando un file viene trascinato con il pulsante destro del mouse. Consente di modificare il menu di scelta rapida visualizzato.
Gestore sovrimpressione icona Chiamato prima che venga visualizzata l'icona di un file. Consente di specificare una sovrimpressione per l'icona del file.
Gestore di ricerca Chiamato per avviare un motore di ricerca. Consente di implementare un motore di ricerca personalizzato accessibile dal menu Start o da Esplora risorse.

 

I dettagli su come implementare gestori di estensione specifici sono illustrati nelle sezioni elencate in precedenza. Per le discussioni sui problemi di implementazione comuni a tutti i gestori di estensioni shell, vedere gli argomenti seguenti: