Qual é a diferença entre% TMP% e% TEMP% em variáveis ??de ambiente do Vista?
Pergunta
No meu computador, as variáveis ??de ambiente% TMP% e% TEMP% ambos apontam para o mesmo local.
São aqueles apenas para questões de compatibilidade com versões anteriores, ou há uma diferença real?
Solução
É por compatibilidade. Ele vai todo o caminho de volta para DOS. Como não havia padrões, alguns DOS (e Win 3.x) aplicações iria procurar a variável de ambiente% TMP% e outros iria procurar% TEMP%. Você era melhor fora se você definir os dois no arquivo AUTOEXEC.BAT.
Windows NT definir ambos automaticamente apenas para se certificar todos os aplicativos continuou a trabalhar OK. % TEMP% é o padrão agora, mas% TMP% vive.
EDIT:. Looks como Richard já mencionado o aspecto DOS em um comentário
Outras dicas
Para completar as outras respostas:
em
MS-DOS 5 (1991-1994) < strong>% TEMP%, por vezes, apontou para C:. \ DOS para remover todos os arquivos em% TEMP% causaria grandes problemas para dizer o mínimo
Eu penso apenas para compatibilidade, como eu podia ver no Windows a partir do NT 4.0 ambas as variáveis ??foram direcionados para o mesmo local em %WinDir%\Temp\
Também nunca vi usando %TMP%
, cada vez que ela estava falando %TEMP%
.
Raymond Chen fala sobre o uso histórico de TMP
e TEMP
, e diz que isso especificamente sobre o Windows:
Por alguma razão, os autores originais do função GetTempFileName escolheu para procurar
TMP
antes de procurarTEMP
.
O resto do artigo vale a pena ler para explicar o uso histórico de ambos em DOS. Parece DOS preferido TEMP
semi-oficialmente, ao invés de TMP
, mas os programadores de terceiros foram para utilizar o que eles gostaram, sobretudo tendo em conta a falta das funções da API padrão que o Windows tem.