Por que o diretório Windows / Temp é usado em vez do usuário local Temp ao usar% TEMP%?

0

Depois de instalar o meu sistema em uma nova estação de trabalho, você deve criar um mecanismo para atualizar o mesmo. Este mecanismo desta linha de comando:

schtasks /CREATE /SC onstart /DELAY 0015: 00 /TN "AppName Update" /TR "cmd /c bitsadmin /transfer My Download/Download/ PRIORITY HIGH ftp.link.com/MyApp.exe %TEMP%\MyApp.exe & %Temp%\MyApp.exe " /ru SYSTEM

Aqui, o instalador deve criar uma tarefa agendada o tempo todo durante o download do sistema operacional e a execução do instalador do pacote.

Mas após a reinicialização do SO e execução da tarefa, o download foi feito, mas não foi salvo em C:\Users\User\AppData\Local\Temp\ , mas em C:\Windows\Temp e, portanto, refletido no restante da instalação.

Eu fiz uma leitura na documentação do msdn schtasks.exe, mas não ficou muito claro para mim. mas acredito que o problema desse parâmetro aqui: /ru SYSTEM .

Se alguém for capaz de explicar por que isso acontece.

    
por Caitano Oliveira 15.03.2015 / 12:44

1 resposta

0

Sua tarefa é executada como sistema, uma conta especial que não possui seu próprio perfil de usuário e sua variável% temp%, aponta para c: \ windows \ temp

Você deve usar um usuário diferente para executar a tarefa, o sistema é muito poderoso.

    
por 15.03.2015 / 13:24