Eu respondi sua postagem sobre LegacyDisable e ter algum conhecimento do assunto. Como este post não tem respostas, vou tentar, embora minha resposta não seja satisfatório.
O problema com esses itens de registro é que eles não estão documentados. Cada nova versão do Windows pode adicionar mais ou invalidar outras. Como eles são indocumentados, a Microsoft mantém a liberdade de modificar livremente o que quiser, então o ônus de verificar se eles ainda funcionam ou não recai sobre os usuários.
Informações sobre esses itens vêm da Microsoft em todos os tipos de informações não oficiais. canais. Às vezes, eles são encontrados em amostras de SDK ou no MSDN, às vezes no fórum respostas por engenheiros da Microsoft, e às vezes de clientes da Microsoft que tiveram privilégios acesso aos engenheiros da Microsoft.
Encontrei uma pessoa que compilou uma lista de todos os itens conhecidos no artigo Registro do tipo de arquivo , cada um com uma explicação e um link para a documentação. Não é muito surpreendente, a maioria dos itens não tem links de documentação.
Quanto a ProgrammaticAccessOnly
, este artigo apenas diz
"Remove verb da enumeração IContextMenu?", Mas não tem link de documentação.
Pesquisando via google, eu encontrei um artigo de Winaero que diz:
ProgrammaticAccessOnly does the main trick. It is a special parameter which tells the Windows Explorer shell that the context menu item can only be accessed by software programmatically. The user interface gets locked down, so the command disappears from the context menu!
Juntos, parece que esses itens especiais de registro são reconhecidos pelo Interface IContextMenu qual:
Exposes methods that either create or merge a shortcut menu associated with a Shell object.
A interface IContextMenu é exportada pelos manipuladores de extensão do Shell, usado principalmente pelo Windows Explorer.
Em resumo, a presença de ProgrammaticAccessOnly
faz com que o shell
enumeração para ignorar o item de shell, mas os programas ainda podem se referir e atualizar
através da interface IContextMenu ou diretamente modificando o registro.