Escrevendo uma extensão de Shell do Windows semelhante ao Cache Viewer Assembléia

StackOverflow https://stackoverflow.com/questions/1408411

  •  05-07-2019
  •  | 
  •  

Pergunta

Eu gostaria de escrever um extensões de shell de personalizar completamente a exibição de uma pasta específica, ala do Cache Viewer Assembly (procure C: \ windows \ assembly e você verá o que quero dizer). Que interfaces COM são responsáveis ??por fornecer esses ganchos? Meu 'espectador' será escrito em C # ...

Obrigado!

Foi útil?

Solução

Aqui está um artigo que deverá fazê-lo em seu caminho:

O alargamento do shell do Windows com extensões de namespace permite que você crie alguma funcionalidade personalizada para o Windows Explorer. Um uso comum é permitir Explorador para apresentar uma lista de itens que não existem em uma pasta reais , mas na verdade residem em um número de lugares. A vista sobre a pasta faz parecer que esses itens estão em um lugar, então gerenciá-los torna-se mais fácil. Este artigo ilustra o processo de criação costume extensões de shell namespace usando C # eo .NET Framework. [...]

Outras dicas

Note que há controvérsia sobre fazer extensões Explorer no .NET .

Exemplo problema: Se você segmentar .NET 2.0, então a sua extensão não funcionará em quaisquer caixas de diálogo "abrir o arquivo" mostrado pelos aplicativos .NET 1.1. Um processo pode carregar apenas uma versão do .NET runtime.

Não é apenas uma questão de sua extensão não funciona; você estará injetando uma versão específica do .NET runtime em qualquer aplicativo que diálogos de arquivo usos. Isso é má notícia, se o aplicativo é um aplicativo não gerenciado que estava pensando em colocar um componente COM destinada a um versão mais recente do tempo de execução .NET, etc.

Editar : como explicado no comentário, isso já foi resolvido pelo tempo de execução .NET 4.0. Portanto, extensões explorador gerenciados deve sempre visar .NET 4.0 ou posterior.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top