![msiexec를 사용하여 MSI를 사용자 정의 디렉터리에 설치하는 방법은 무엇입니까?](https://rvso.com/image/1615286/msiexec%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20MSI%EB%A5%BC%20%EC%82%AC%EC%9A%A9%EC%9E%90%20%EC%A0%95%EC%9D%98%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EC%97%90%20%EC%84%A4%EC%B9%98%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
다음은 Windows 10의 관리 PowerShell을 .msi
사용하여 설치하려는 시도입니다 .msiexec
나는 2개의 드라이브 각각에 대해 7번(총 14번)을 만들었고 C:
대신 D:
다른 인수를 사용하고 ARG
동일한 바람직한 경로 값을 사용했습니다.
주형: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
D:\Blender Foundation\Blender\2.81\
매개변수에 설정된 것과 동일한 드라이브에서 실행하는 경우: 이 드라이브의 기본 폴더(예 : ) 에 설치됩니다.- 다른 드라이브에서 실행할 때: 아무것도 하지 않는 것 같습니다.
이 문제에 대한 해결 방법이 있습니까?
업데이트 1
.msi
이전 패키지가 잘못 빌드되었기 때문에 다른 패키지(Blender 2.81)에서 테스트했습니다 . 위에 나열된 인수 이름 중 어느 것도 트릭을 수행하지 못했습니다. 드라이브 에서의 모든 설치 D:
는 C:
.
업데이트 2
Blender 2.81 .msi
의 경우 WiX
. 설치 경로 인수의 이름을 알아내기 위해 INSTALL_ROOT
시도할 수 있습니다 . 덕분에msiexec /lp! <msi_property_logfile> /i <msi_name>
.msi
엔포양그리고 그의 대답여기.
답변1
이것이 제대로 작동하려면 다음 단계를 수행해야 합니다.
- 설치 프로그램 에 사용된 공용 속성 목록을 가져옵니다
.msi
.PS >.\YourAppInstaller.msi /lp! YourAppInstall.log
;- 설치를 취소합니다.
.log
이전 단계에서 생성된 파일 에서 공용 속성을 찾습니다 ..msi
명령줄에서 공용 속성을 사용하여 실행합니다 .- 속성 값에 공백이 포함된 경우 역따옴표+따옴표 쌍(
`"
) 으로 묶습니다. - 예:
PS >.\YourAppInstaller.msi YOUR_PROP=`"value with spaces`"
- 속성 값에 공백이 포함된 경우 역따옴표+따옴표 쌍(
Blender 자동 설치의 경우 설치 경로를 지정하려면 다음과 같이 설치 프로그램을 호출해야 합니다(예:).
.\blender-3.4.1-windows-x64.msi INSTALL_ROOT=`"C:\Program Files\Blender Foundation\Blender\`"
이렇게 하면 설치하려는 위치를 이해할 수 있습니다.