O Run Dialog pode servir como uma maneira fácil e muito útil de abrir programas em seu computador, mas como ele sabe onde esses aplicativos estão localizados em seu sistema? O post de perguntas e respostas do superusuário de hoje tem a resposta para a pergunta de um leitor curioso.
A sessão de perguntas e respostas de hoje chega até nós como cortesia do SuperUser – uma subdivisão do Stack Exchange, um grupo de sites de perguntas e respostas voltado para a comunidade.
A questão
O leitor de SuperUser mt025 quer saber como a caixa de diálogo Executar sabe onde estão os aplicativos que não estão no PATH do sistema Windows:
Como um usuário avançado, freqüentemente uso a caixa de diálogo Executar. Posso entender porque os comandos a seguir funcionam, visto que estão na variável de ambiente PATH .
- mspaint
- diskmgmt.msc
- explorador
Esses comandos também funcionam no CMD.
Os comandos abaixo funcionam na caixa de diálogo Executar, mas não estão na variável de ambiente PATH e não funcionam no CMD.
- Raposa de fogo
- winword
- iexplore
Como o Run sabe onde esses arquivos estão?
A resposta
O contribuidor do SuperUser w32sh tem a resposta para nós:
Quando você executa um comando na caixa de diálogo Executar, o sistema examina as chaves de registro do App Paths aqui:
- HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ App Paths
e
- HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ App Paths
Exemplo
- HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ App Paths \ filezilla.exe
Os dados do valor ( padrão ) têm o caminho completo para o executável. Se não for encontrado, ele examina cada pasta incluída no PATH , enquanto o CMD (o prompt de comando) não faz referência a essas chaves de registro, ele pesquisa apenas o PATH .
Tem algo a acrescentar à explicação? Som desligado nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui .