240 votes

Comment extraire des fichiers d'un paquet MSI ?

Nous avons quelques anciens correctifs dont nous voulons récupérer les fichiers, mais nous ne voulons pas prendre le temps de les installer sur une machine.

Quelqu'un peut-il me conseiller un moyen d'extraire des fichiers d'un paquet d'installation MSI ?

0 votes

Pouvez-vous fournir plus d'informations sur le paquet d'installation MSI exact que vous voulez extraire, les détails de votre système d'exploitation, etc.

273voto

Tout d'abord, pour accéder à une invite de commande, procédez comme suit :

  1. Cliquez sur le bouton Démarrer.

  2. Cliquez sur Tous les programmes.

  3. Allez dans Accessoires.

  4. Cliquez avec le bouton gauche de la souris sur Invite de commande.

Une fois que vous avez votre invite de commande, entrez ce qui suit :

msiexec /a drive:\filepath\to\MSI\file /qb TARGETDIR=drive:\filepath\to\target\folder

en utilisant les emplacements souhaités pour remplir les chemins de fichiers mentionnés ci-dessus. Exemple :

msiexec /a c:\testfile.msi /qb TARGETDIR=c:\temp\test

0 votes

Merci neoice - cela semble fonctionner, donc je l'accepte. Malheureusement, il s'avère qu'il ne s'agit pas d'installations msi mais d'installations installshield .exe.

7 votes

Une autre recherche rapide sur Google a permis de trouver ceci : legroom.net/software/uniextract Je préférerais utiliser des encastrements, mais cela semble être une utilité acceptable.

0 votes

Notez que (a) msiexec ne traite pas les chemins de fichiers relatifs et (b) placera les fichiers dans leurs chemins d'installation cibles en utilisant cette méthode.

93voto

Shekhar Points 4915

Utilice 7Zip .
Il décomprimera pour vous les paquets MSI, CAB, certains EXE et bien d'autres encore. Il n'est pas nécessaire d'avoir des privilèges d'administrateur pour l'exécuter.

-EDIT-

Et comme il s'agit d'un logiciel libre, il n'y a pas de messages vous demandant d'acheter le matériel.

22 votes

Et après l'avoir essayé, msiexec fait un meilleur travail (en préservant les répertoires, en nommant les fichiers correctement, etc.)

0 votes

Cela n'a pas semblé fonctionner pour moi sur win7 x64 avec 7-Zip 32-bit. Y a-t-il un moyen particulier (autre que le glisser-déposer) d'indiquer au logiciel d'ouvrir le fichier ?

0 votes

Il devrait y avoir une option de 7zip dans le menu contextuel lorsque vous cliquez avec le bouton droit de la souris sur le fichier - cela vous donnera la possibilité d'extraire les fichiers.

54voto

Scott Willeke Points 625

Il existe également lessmsi qui est entièrement gratuit et open source.

Il n'y a pas de publicité ou de messages agaçants, il conserve correctement la structure des répertoires et les noms de fichiers, il dispose d'un système de gestion de l'information. interface de ligne de commande sophistiquée ainsi qu'une interface utilisateur graphique qui permet de parcourir les fichiers et de visualiser les tables MSI internes et d'autres attributs MSI.

8 votes

Merci ! Celui-ci m'a aidé à extraire d'un MSI qui ne voulait pas extraire avec la commande msiexec disant "admin install is not supported" pour <nom du paquet d'installation>.

1 votes

Celui-ci a aidé msiexec n'a pas extrait pour une raison quelconque

27voto

Paralife Points 1725

Il existe un support MSI intégré pour l'extraction de fichiers (installation par l'administrateur).

MSI ou Windows Installer a un support intégré pour cela - l'extraction de fichiers à partir d'un fichier MSI. C'est ce qu'on appelle un installation administrative . Il s'agit essentiellement d'un moyen pour créer un point d'installation du réseau à partir duquel l'installation peut être exécutée sur de nombreux ordinateurs cibles. Cela garantit que les fichiers sources sont toujours disponibles pour toute opération de réparation.

Notez que l'installation par l'administrateur et l'utilisation d'un outil zip pour extraire les fichiers sont très différentes ! Ce dernier n'ajustera pas la disposition des médias de la table des médias afin que le paquet soit configuré pour utiliser des fichiers source externes - ce qui est la manière correcte. Il est toujours préférable d'exécuter l'installation d'administration réelle plutôt que d'effectuer des extractions zip. En ce qui concerne la compression, il existe actuellement trois algorithmes de compression différents utilisé pour les fichiers cab dans le format de fichier MSI : MSZip, LZX, et Storing (non compressé). Tous ces éléments sont correctement gérés par une installation en mode administrateur.


Les Admin-installs ont de nombreux usages

Il est recommandé d'en savoir plus sur les admin-installs car c'est un concept utile, et j'ai écrit un post sur stackoverflow : Quel est le but d'une installation administrative lancée à l'aide de msiexec /a ? .

En substance, l'installation de l'administrateur est importante pour :

  • Extraction et inspection des fichiers d'installation
  • Déploiement via un logiciel de gestion des systèmes, par exemple SCCM (évite les fichiers MSI énormes, mis en cache dans C:\Windows\Installer puisque les fichiers sont extraits des cabines internes)
  • Repackaging d'applications d'entreprise
  • Opérations de réparation, de modification et d'auto-réparation
  • Parcheando & améliorations
  • La publicité de MSI (la " exécuter à partir de la source fonction ")
  • Un certain nombre d'autres petits détails

Veuillez lire l'article de stackoverflow lié ci-dessus pour plus de détails. Il s'agit d'un concept assez important pour administrateurs du système , packagers d'applications , développeurs de logiciels , gestionnaires de versions y même l'utilisateur moyen pour voir ce qu'ils installent etc...


Admin-installation, mode d'emploi pratique

Vous pouvez effectuer une installation administrative de plusieurs manières différentes selon le mode de livraison de l'installateur. Essentiellement, il est soit livré comme un Fichier MSI ou enveloppé dans un fichier setup.exe .

Exécutez ces commandes à partir d'un invite de commande élevée et suivez les instructions de l'interface graphique pour les lignes de commande interactives :

  • Fichiers MSI :

    msiexec /a File.msi

    c'est pour fonctionner avec l'interface graphique, vous pouvez le faire silencieusement aussi :

    msiexec /a File.msi TARGETDIR=C:\MyInstallPoint /qn
  • fichiers setup.exe :

    setup.exe /a

A setup.exe peut également être un fichier configuration de style traditionnel (non-MSI) ou le redoutable Installscript MSI type de fichier - un type de projet Installshield bogué bien connu avec un format MSI hybride non conforme aux normes. Il s'agit essentiellement d'un MSI doté d'une interface graphique personnalisée et plus avancée, mais il est également truffé de bogues.

Para les anciens fichiers setup.exe le site /a ne fera rien, mais vous pouvez essayer l'option /extract_all : [path] switch comme expliqué dans ce pdf . C'est une bonne référence pour l'installation silencieuse et d'autres choses aussi. Une autre ressource est cette liste de paramètres de ligne de commande du fichier setup.exe d'Installshield .

Fichiers de correction MSI (*.MSP) peut être appliquée à une image d'administration pour extraire correctement ses fichiers. 7Zip sera également en mesure d'extraire les fichiers, mais ils ne seront pas correctement formatés.

Enfin, si aucune autre méthode ne fonctionne, vous pouvez mettre la main sur les fichiers d'installation extraits en nettoyant le dossier temporaire de votre système, lancer le setup.exe de manière interactive et attendre que la première boîte de dialogue s'affiche. Dans la plupart des cas, le programme d'installation aura extrait un tas de fichiers dans un dossier temporaire. Parfois les fichiers sont simples, d'autres fois au format CAB, mais Winzip, 7Zip ou même Universal Extractor (je n'ai pas testé ce produit) - peuvent être capables de les ouvrir.

0 votes

Voir aussi cette réponse : superuser.com/questions/307678/

0 votes

Le même message sur stackoverflow : stackoverflow.com/a/24987512/129130 (Je devrais en supprimer un, mais les deux ont été upvoted et ils ont été fusionnés récemment).

10voto

Mick Points 1881

Je recommande UniExtract pour avoir rendu la solution de Neoice encore plus facile. Elle fait la même chose, mais est plus automatisée et permet plusieurs méthodes d'extraction des fichiers MSI, et pas seulement une installation administrative (comme sa solution).

UniExtract peut également traiter les exe emballés avec WISE ou InstallShield, ainsi qu'une variété d'autres formats compressés. Oh, et il est gratuit.

Universal Extractor est un programme qui fait exactement ce qu'il dit : extraire des fichiers à partir de n'importe quel type d'archive, qu'il s'agisse un simple fichier zip, une installation d'installation, ou même un package Windows Installer (.msi).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X