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.