![Como instalar o MSI no diretório personalizado usando msiexec?](https://rvso.com/image/1615286/Como%20instalar%20o%20MSI%20no%20diret%C3%B3rio%20personalizado%20usando%20msiexec%3F.png)
Aqui está minha tentativa de instalação .msi
usando msiexec
o PowerShell Administrativo no Windows 10.
Fiz isso 7 vezes para cada uma das 2 unidades C:
e D:
(14 no total) com argumentos diferentes no lugar ARG
e o mesmo valor de caminho desejável.
Modelo:PS C:\WINDOWS\system32> msiexec /i D:\users\username\downloads\soft\publisher\softwarename\software.msi /passive ARG="D:\Soft\publisher\softwarename"
ARG
é:
TARGETDIR
,INSTALLDIR
,INSTALLPATH
,INSTALLFOLDER
,INSTALLLOCATION
,APPLICATIONFOLDER
,APPDIR
- Ao executar na mesma unidade definida no parâmetro: instala nesta unidade em uma pasta padrão (por exemplo,
D:\Blender Foundation\Blender\2.81\
) - Ao executar a partir de uma unidade diferente: parece não fazer nada
- Ao executar na mesma unidade definida no parâmetro: instala nesta unidade em uma pasta padrão (por exemplo,
Existe uma solução alternativa para esse comportamento?
Atualização 1
Testei em outro .msi
pacote (Blender 2.81), pois o anterior foi compilado incorretamente. Nenhum dos nomes de argumentos listados acima funcionou. Cada instalação, mesmo a partir de uma D:
unidade, estava na pasta padrão em C:
.
Atualização 2
Para o Blender 2.81, como, suponho, para qualquer .msi
pacote com WiX
, era INSTALL_ROOT
. Você pode tentar msiexec /lp! <msi_property_logfile> /i <msi_name>
descobrir .msi
o nome do argumento do caminho de instalação. Graças aIene por Yange sua respostaaqui.
Responder1
Para que isso funcione corretamente, você precisa executar estas etapas:
- Obtenha uma lista de propriedades públicas usadas em seu
.msi
instalador:PS >.\YourAppInstaller.msi /lp! YourAppInstall.log
;- Cancelar instalação;
- Encontre propriedades públicas no
.log
arquivo gerado na etapa anterior; - Execute seu
.msi
com propriedade pública na linha de comando:- Se o valor da sua propriedade contiver espaços, coloque-o no par crase + aspas (
`"
) - Exemplo:
PS >.\YourAppInstaller.msi YOUR_PROP=`"value with spaces`"
- Se o valor da sua propriedade contiver espaços, coloque-o no par crase + aspas (
No caso de instalação silenciosa do Blender, para especificar um caminho de instalação, você precisa chamar o instalador como segue (como exemplo):
.\blender-3.4.1-windows-x64.msi INSTALL_ROOT=`"C:\Program Files\Blender Foundation\Blender\`"
Assim ele entenderá onde deseja que seja instalado.