Por que as instalações do msi usam unidades mais lentas em instalações mais rápidas no Windows 7?

7

Tenho notado que a unidade mais lenta no meu sistema é mais usada durante a instalação do msi. Eu principalmente percebo isso quando executando atualizações do Windows, mas parece ser msi instala em geral.

A configuração pela qual vi pela última vez isso ocorreu com o Windows 7 com as seguintes unidades:
Sata:
Unidade de sistema operacional de 240GB SSD NTFS ~ 515MB / s
1TB NTFS ~ 110MB / s
Firewire:
4TB ExFAT ~ 80MB / s

Eu acho que o Windows escolheria a unidade mais rápida com espaço disponível para arquivos temporários. Mas, em vez disso, escolherá a unidade externa com a velocidade de transferência mais lenta. Eu também poderia entender a escolha do 1TB por não ser um ssd em uma tentativa de preservar a longevidade da capacidade de gravação do ssd. Por que isso acontece? Existe uma maneira de forçar essas instalações a usar a unidade do sistema operacional ou uma unidade específica?

    
por Joshua C 25.06.2012 / 02:13

1 resposta

11

Quando um MSI é executado, ele verifica se a variável ROOTDRIVE é definido internamente no MSI. Se não estiver definido no msi para uma instalação normal, ele será definido para a unidade local com o maior espaço livre (e as unidades normalmente maiores são mais lentas).

Se você estiver executando uma instalação administrativa (a administração geralmente é usada apenas para instalação usando a diretiva de grupo), ela adicionará outra etapa ao processo descrito anteriormente. Ele usará a primeira unidade de rede disponível que é gravável em vez da maior unidade local primeiro e, em seguida, se não houver nenhuma, ela tentará usar a maior unidade local.

Você pode definir o parâmetro ROOTDRIVE executando seu msi usando o seguinte comando

msiexec /i package.msi ROOTDRIVE="C:\"

No entanto, se dentro do msi, o autor do msi definir o caminho do ROOTDRIVE no script de instalação que será alterado, substituirá a configuração que você definiu na linha de comando.

    
por 25.06.2012 / 05:59