Wat is het MSM-bestandsformaat?
Een .msm-bestand is een Windows Installer Merge Module - een herbruikbare verpakkingseenheid die gedeelde componenten (DLL's, lettertypen, registervermeldingen, COM-registraties) levert aan meerdere MSI-installatiepakketten zonder logica te dupliceren. Merge modules kunnen niet op zichzelf worden geïnstalleerd; ze moeten tijdens het bouwen worden samengevoegd in een bovenliggende .msi-database met behulp van Mergemod.dll uit de Windows Installer SDK, of via auteurstools zoals WiX Toolset, InstallShield of Advanced Installer.
Intern gebruiken .msm-bestanden dezelfde OLE2 Compound File Binary (CFB) container als .msi-pakketten - de magic bytes op bestandsniveau (D0 CF 11 E0 A1 B1 1A E1) zijn identiek. De container bevat een subset van relationele databasetabellen van Windows Installer (File, Component, Registry en andere) plus MSM-specifieke tabellen zoals ModuleComponents, ModuleDependency en ModuleSignature. Payload-bestanden worden opgeslagen in een ingebedde MergeModule.CABinet-stream, gecomprimeerd met LZX of MSZIP.
Elke component-GUID binnen een merge module is uniek, wat conflicten in tabelnamen voorkomt wanneer de module wordt opgenomen in een bovenliggend installatieprogramma. Het formaat werd in 1999 geïntroduceerd met Windows Installer 1.0 op Windows 2000; de laatste specificatie-update kwam met Windows Installer 5.0 (Windows 7 / Server 2008 R2).
Moderne verpakking geeft steeds vaker de voorkeur aan MSIX voor Windows 10 en later, wat geen merge modules ondersteunt. WiX v4/v5 ondersteunt ze nog steeds via het <MergeRef>-element voor legacy-compatibiliteit. .msm-bestanden kunnen worden geïnspecteerd met Orca (Windows Installer SDK) of worden geopend door 7-Zip als OLE2-samengestelde documenten.
Beveiliging & veiligheid
RISICO: MEDIUMMSM-bestanden zijn installatiecomponenten die, wanneer ze in een MSI worden samengevoegd en uitgevoerd, bestanden, registersleutels en COM-objecten op een Windows-systeem installeren. Voeg geen niet-vertrouwde .msm-bestanden samen in productie-installatieprogramma's. Inspecteer ze voor gebruik met Orca of 7-Zip. Bestanden kunnen Authenticode-ondertekend zijn; verifieer de handtekening indien aanwezig.
Formaatdetails
in een notendop- MediaMonkey skin-module - MediaMonkey-audiospeler gebruikt .msm voor skin-/modulebestanden - niet gerelateerd aan Windows Installer.
Programma's die MSM-bestanden openen
Technische details
diepe specificaties| Containerformaat | OLE2 Compound File Binary (CFB / Structured Storage) - dezelfde container als .msi en legacy .doc/.xls bestanden |
| Magic bytes | D0 CF 11 E0 A1 B1 1A E1 op offset 0 (OLE2 CFB-handtekening, gedeeld met .msi) |
| Bytevolgorde | Little-endian |
| Ingebed cabinet | MergeModule.CABinet stream binnen de OLE2-container; payload-bestanden gecomprimeerd met LZX of MSZIP |
| Databasetype | Windows Installer relationele database - subset van MSI-tabellen plus MSM-specifieke tabellen |
| MSM-specifieke tabellen | ModuleComponents, ModuleDependency, ModuleExclusion, ModuleSignature, ModuleSubstitution |
| Standalone installatie | Niet mogelijk - moet tijdens het bouwen worden samengevoegd in een bovenliggende .msi-database via Mergemod.dll |
| Component GUID-beleid | Elke component-GUID is uniek per module om conflicten in tabelnamen te voorkomen tijdens het samenvoegen |
| Typische bestandsgrootte | 50 KB - 50 MB afhankelijk van de verpakte payload |
| Code-ondertekening | Optionele Authenticode-handtekening; niet standaard toegepast |
| Bijbehorend OS | Windows (Windows 2000 en later) |
| Merge tool API | Mergemod.dll (Windows Installer SDK); ook WiX Toolset, InstallShield, Advanced Installer |
| WiX-compatibiliteit | WiX v4/v5 ondersteunt merge modules via het <MergeRef> element |
| Moderne vervanging | MSIX/APPX-verpakking (Windows 10+) ondersteunt geen merge modules; WiX fragment/library-model heeft de voorkeur voor nieuwe ontwikkeling |
| Uitgebracht | 1999 (Windows Installer 1.0, Windows 2000) |
| Laatste versie | Windows Installer 5.0 (Windows 7/Server 2008 R2) |
| Specificatie | learn.microsoft.com |
MSM conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over MSM-bestanden.