Condividi tramite


Interfaccia IColumnProvider (shlobj.h)

Espone i metodi che consentono l'aggiunta di colonne personalizzate nella visualizzazione Dettagli esplora risorse.

Nota Il supporto per IColumnProvider è stato rimosso a partire da Windows Vista. Il sistema di proprietà Windows viene usato al suo posto. Per i materiali concettuali che spiegano l'uso del nuovo sistema, vedere Sistema di proprietà Windows .
 

Ereditarietà

L'interfaccia IColumnProvider eredita dall'interfaccia IUnknown . IColumnProvider include anche questi tipi di membri:

Metodi

L'interfaccia IColumnProvider include questi metodi.

 
IColumnProvider::GetColumnInfo

Richiede informazioni su una colonna.
IColumnProvider::GetItemData

Richiede dati di colonna per un file specificato.
IColumnProvider::Initialize

Inizializza un'interfaccia IColumnProvider.

Commenti

La visualizzazione Dettagli esplora risorse visualizza in genere diverse colonne standard. Ogni colonna elenca le informazioni, ad esempio le dimensioni o il tipo di file, per ogni file nella cartella corrente. Può anche essere presente una serie di colonne che l'utente può scegliere di visualizzare. Quando l'utente fa clic con il pulsante destro del mouse su una delle intestazioni di colonna, viene visualizzato un elenco delle colonne disponibili in una finestra di dialogo. Creando un oggetto provider di colonne che esporta l'interfaccia IColumnProvider , è possibile aggiungere colonne personalizzate a tale finestra di dialogo per la visualizzazione da Esplora risorse. Ad esempio, una raccolta di file che contengono musica può usare un provider di colonne per visualizzare colonne che elencano l'artista e il pezzo contenuti in ogni file.

Un provider di colonne è un oggetto globale che viene chiamato ogni volta che Esplora risorse visualizza la visualizzazione Dettagli. Esplora risorse esegue una query su tutti i provider di colonne registrati per le relative caratteristiche di colonna. Se l'utente ha selezionato una delle colonne del provider di colonne, Esplora risorse esegue una query sul provider di colonne per i dati associati per ogni file nella cartella. Visualizza quindi tutte le colonne selezionate.

In genere, i provider di colonne vengono usati per visualizzare una o più colonne personalizzate per un tipo di file specifico. Quando un provider di colonne riceve una richiesta di dati, lo fornisce se il file è un membro del tipo supportato. In caso contrario, ignora la richiesta restituendo S_FALSE.

Le colonne sono identificate da una struttura SHCOLUMNID che contiene una coppia pid fmtid/. Se possibile, usare fmtids e pids esistenti. Se una cartella contiene file di più tipi di file, i dati di tipi diversi possono essere uniti nella stessa colonna. Ad esempio, il pid Autore dal set di proprietà di informazioni di riepilogo può essere usato per un'ampia gamma di scopi. Se si utilizza una struttura SHCOLUMNID personalizzata, la colonna visualizzerà i dati solo per i file membri del tipo supportato. Se la cartella contiene altri file, le relative voci saranno vuote.

Implementare un oggetto che esporta questa interfaccia quando si desidera visualizzare una o più colonne personalizzate nella visualizzazione Dettagli esplora risorse. Esplora risorse chiama i metodi di interfaccia per richiedere le informazioni necessarie per visualizzare la colonna. La procedura utilizzata da Esplora risorse è la seguente:

  1. Chiamare IColumnProvider::Initialize per specificare la cartella da visualizzare.
  2. Chiamare IColumnProvider::GetColumnInfo per recuperare le caratteristiche della colonna.
  3. Se la colonna è stata selezionata dall'utente, chiamare IColumnProvider::GetItemData per ogni file nella cartella per recuperare i dati appartenenti alla voce di colonna del file.
Oltre alla normale registrazione COM (Component Object Model), l'oggetto provider di colonne deve essere registrato anche con Esplora risorse. A tale scopo, aggiungere una sottochiave denominata con il formato stringa del GUID dell'oggetto a questa chiave.
HKEY_CLASSES_ROOT
   Folder
      shellex
         ColumnHandlers

Questa interfaccia viene chiamata da Esplora risorse. In genere non viene usato dalle applicazioni.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shlobj.h