Interface IColumnProvider (shlobj.h)

Expõe métodos que permitem a adição de colunas personalizadas na exibição Detalhes do Windows Explorer.

Nota O suporte para IColumnProvider foi removido a partir do Windows Vista. O sistema de propriedades do Windows é usado em seu lugar. Consulte Sistema de Propriedades do Windows para obter materiais conceituais que explicam o uso do novo sistema.
 

Herança

A interface IColumnProvider herda da interface IUnknown . IColumnProvider também tem esses tipos de membros:

Métodos

A interface IColumnProvider tem esses métodos.

 
IColumnProvider::GetColumnInfo

Solicita informações sobre uma coluna.
IColumnProvider::GetItemData

Solicita dados de coluna para um arquivo especificado.
IColumnProvider::Initialize

Inicializa uma interface IColumnProvider.

Comentários

A exibição Detalhes do Windows Explorer normalmente exibe várias colunas padrão. Cada coluna lista informações, como o tamanho ou o tipo do arquivo, para cada arquivo na pasta atual. Também pode haver várias colunas que o usuário pode optar por exibir. Quando o usuário clica com o botão direito do mouse em um dos cabeçalhos de coluna, uma lista das colunas disponíveis é exibida em uma caixa de diálogo. Ao criar um objeto de provedor de colunas que exporta a interface IColumnProvider, você pode adicionar colunas personalizadas a essa caixa de diálogo para exibição pelo Windows Explorer. Por exemplo, uma coleção de arquivos que contêm músicas poderia usar um provedor de colunas para exibir colunas listando o artista e a peça contidas por cada arquivo.

Um provedor de colunas é um objeto global que é chamado sempre que o Windows Explorer exibe a exibição Detalhes. O Windows Explorer consulta todos os provedores de coluna registrados para suas características de coluna. Se o usuário tiver selecionado uma das colunas do provedor de colunas, o Windows Explorer consultará o provedor de colunas para obter os dados associados para cada arquivo na pasta. Em seguida, ele exibe todas as colunas selecionadas.

Normalmente, os provedores de coluna são usados para exibir uma ou mais colunas personalizadas para um tipo de arquivo específico. Quando um provedor de coluna recebe uma solicitação de dados, ele fornece se o arquivo é um membro de seu tipo com suporte. Caso contrário, ele ignora a solicitação retornando S_FALSE.

As colunas são identificadas por uma estrutura SHCOLUMNID que contém um parde pidsfmtid/. Se possível, use fmtids e pids existentes. Se uma pasta contiver arquivos de mais de um tipo de arquivo, os dados de tipos diferentes poderão ser mesclados na mesma coluna. Por exemplo, o pid author do conjunto de propriedades de informações de resumo pode ser usado para uma ampla variedade de finalidades. Se você usar uma estrutura SHCOLUMNID personalizada, a coluna exibirá dados somente para os arquivos que são membros do tipo com suporte. Se a pasta contiver outros arquivos, suas entradas ficarão em branco.

Implemente um objeto que exporta essa interface quando você deseja ter uma ou mais colunas personalizadas exibidas na exibição Detalhes do Windows Explorer. O Windows Explorer chama os métodos de interface para solicitar as informações necessárias para exibir a coluna. O procedimento usado pelo Windows Explorer é o seguinte:

  1. Chame IColumnProvider::Initialize para especificar a pasta a ser exibida.
  2. Chame IColumnProvider::GetColumnInfo para recuperar as características da coluna.
  3. Se a coluna tiver sido selecionada pelo usuário, chame IColumnProvider::GetItemData para cada arquivo na pasta para recuperar os dados que pertencem à entrada de coluna do arquivo.
Além do registro normal do COM (Component Object Model), o objeto do provedor de colunas também deve ser registrado no Windows Explorer. Para fazer isso, adicione uma subchave chamada com a forma de cadeia de caracteres do GUID do objeto a essa chave.
HKEY_CLASSES_ROOT
   Folder
      shellex
         ColumnHandlers

Essa interface é chamada pelo Windows Explorer. Normalmente, ele não é usado por aplicativos.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shlobj.h