MSIExec'i belirtilen sürüme yükseltmeye zorlama


0

LibreOffice'i (sürüm 5.3.2.2) başka bir kurulumun parçası olarak kurmak istiyorum ancak aşağıdaki sorunu yaşıyorum:

  • 4.x veya önceki bir sürüm zaten yüklü olduğunda, yükleyici beklendiği gibi LibreOffice 5.3.2.2'yi yükler.
  • Hiçbir şey yüklenmediğinde, yükleyici beklendiği gibi LibreOffice 5.3.2.2'yi yükler.
  • 5.x sürümü zaten kurulu olduğunda, yükleyici hiçbir şey yapmaz.

Güncellemeyi 5.x'ten 5.3.2.2'ye zorlamak için komut satırına hangi parametreyi ekleyebilirim? Şu anda aşağıdaki komut satırını kullanıyorum:

msiexec /i "<filename.msi>" /q

Parametreyi zaten denedim REINSTALL=ALL ancak bu işe yaramadı (5.x'ten 5.3.2.2'ye güncelleme yok).

MSI dosyasında bazı değişikliklerin yapılması gerekiyorsa: Bilgisayarımda Orca var, bu yüzden gerektiğinde MSI dosyasını değiştirebilirim.

Herhangi bir fikir?


@Daniel: Orca MSI dosyasını değiştirmek için kullanabileceğim bir MSI editörüdür, istediğimi yapabilecek herhangi bir parametre yoksa.
— Dominique

Etiketi kaldırdım çünkü soruyu sınıflandırmaya yardımcı olmuyor. Etiket şu anda diğer üç soru ve bunların hiçbiri MSI editörüne atıfta bulunmaz. Bunun yerine Orca Ekran Okuyucusuna başvuruyorlar.
— Daniel B

Üzgünüz, başka bir programın var olduğuna dair hiçbir fikrim yoktu :-)
— Dominique

Yanıtlar:


1

Bu arada, sorumun cevabını Windows-installer SDK kullanarak buldum

msiexec /i "<filename.msi>" /q REINSTALL=ALL REINSTALLMODE=A

( REINSTALLMODE=A Tüm dosyaların aynı / farklı / eski / genç / ... olmasına rağmen yeniden yüklenmesini zorlar


Komutunuz programı yalnızca C sürücüsüne yükler. Komut seçeneğim ile hedef klasörü kontrol edebilirsiniz. Ve eğer C sürücünüz bir şekilde hasar görmüşse faydalıdır.
— Biswapriyo

0

msiexec /a pathtoMSIfile /qb TARGETDIR=pathtotargetfolder

  • “/ Qb” argümanı yükleyiciye paketten çıkarırken basit bir UI göstermesini söyler, eğer işlemi tamamen sessiz yapmak istiyorsanız bunun yerine “/ qn” kullanın.

Msiexec

  • Diyelim ki F sürücüsünde bir LibreOffice MSI dosyası var ve E sürücüsüne yüklemek istiyorum. Ben sadece komutu yönetici olarak yazdım

msiexec /a "F:\LibreOffice_5.3.3_Win_x64.msi" /qb TARGETDIR=E:\Libreoffice

Kurulumun ilerlemesini gösteren iki resim Libreoffice Initial Libreoffice time

  • Bu işlem, söz konusu hedef dizindeki önceki yükleme dosyalarının üzerine yazar. Hatırla bütün işleri kopyala itibaren Libreoffice\System64 için Libreoffice\program. İle kısayol yapıyorum E:\Libreoffice\program\soffice.exe --nologo (benim durumumda) uyumlu herhangi bir ofis dosyasını açıp sadece & amp; düşürmek. Programı, sistem sürücüsü dışında da yükleyebilirsiniz.

  • MSI'yı yüklemek için bazı uygulamalar da var, bunları deneyin: lessmsi , Evrensel çıkarıcı , MSI Unpacker Yardımcı Programı


Harika bir fikir gibi görünmüyor. Bileşen kayıtlarını (eğer varsa) güncellemeyecek ve kesinlikle MSI veritabanında kaydedilen sürümü güncellemeyecektir.
— Daniel B

@DanielB Her gün bu işlemle kullanıyorum ve yanlış bir şey olmadı. Bir kişi sağ tıklatarak dosyayı açabilir ve "birlikte aç" ı seçebilir. Ve hiçbir kayıt gerekli değildir.
— Biswapriyo

@Biswa: Ayrıntılı cevap için teşekkürler, ama benzeyen bir şey bekliyordum msiexec /i <filename>.msi <WHAT_TO_DO>=<OVERWRITE_EXISTING> (büyük harflerden dolayı), Windows-yükleyicisinin SDK'sına bakıyordum ama bulamadım. Bunun olmaması durumunda, bir MSI editörü (Orca gibi) kullanarak & lt; filename & gt; .msi dosyasını düzenleyerek bunu başarabilir miyim?
— Dominique

Bu işlem herhangi bir SDK çalıştırılabilir gerektirmez. Msiexec bir Windows dahili yazılımıdır. Ve bu komut seçeneği ile herhangi bir yere yükleyebilirsiniz.
— Biswapriyo
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.