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?

Foi útil?

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:

Ambiente variável

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

http://www.operating-system.org/betriebssystem/bsgfx/microsoft/msdos500-scr-01 .png

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 procurar TEMP.

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.

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