Mysterious @ character no Registro do Windows

4

Quando eu navego para "HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ WMP.PlayCD \ Shell \ Play" no Registro do Windows, eu encontro um REG_EXPAND_SE chamado MUIVerb no meu sistema Windows 7. No entanto, em seu conteúdo, ele carrega "@% windir% \ system32 \ wmploc.dll, -6503"

Agora, minha pergunta é: O que esse personagem @ significa ou faz? Eu sou um MS-DOS crescido e eu não vi essa notação antes. Devo interpretá-lo como o @ como em um endereço de e-mail? Qual é o resultado final? Ele se torna "C: \% windir% \ system32 \ wmploc.dll, -6503" eventualmente?

    
por Karel 27.12.2011 / 22:25

1 resposta

6

O registro em si é apenas um armazenamento de dados hierárquico; notações e significados dependem do programa usando os dados.

Nesse caso, o valor MUIVerb é onde o Explorer mantém descrições textuais das ações do arquivo. Por um tempo eles costumavam ser mantidos no registro diretamente, mas quando vários "pacotes de idiomas" do Windows eram introduzidos, o texto traduzível era movido para recursos de arquivo, e descrições começando com " @ " eram interpretadas pelo Explorer como "o texto é armazenado em a seguinte localização (recurso 'STRING' numerado de um arquivo EXE / DLL) ". (É possível ter várias versões do mesmo recurso para idiomas diferentes. Você pode usar o Resource Explorer ou ferramentas semelhantes para procurar arquivos DLL e EXE.)

Uma exceção à regra "registro como repositório de dados" acima. Observe que o tipo de dados é REG_EXPAND_SZ , não REG_SZ . Isso significa que quando o Explorer ler o valor, ele terá certas variáveis de ambiente expandidas - o Explorer receberá " @C:\WINDOWS\system32\wmploc.dll,-6503 " (com o %windir% expandido). Essa é a única coisa "especial" que os valores e dados do Registro podem ter.

O restante depende inteiramente do Explorer - o " @ " inicial significa que o Explorer precisa carregar uma biblioteca C:\WINDOWS\system32\wmploc.dll , encontrar um recurso de string -6503 e usar seu conteúdo como texto final para mostrar o usuário.

    
por 27.12.2011 / 22:39