2016-12-09 5 views
0

Viele Dateitypen können durch ihre magische Nummer identifiziert werden, siehe z.B. here.Identifizieren von Mergemodulen (.msm-Dateien)?

ich, ob eine Datei ein Microsoft Merge-Modul ist sagen will (siehe here)

Sie Microsoft Merge-Module (MSM-Dateien) hat eine magische Zahl? Wenn nicht, wie kann ich programmgesteuert herausfinden, ob eine Datei ein Merge-Modul ist? Ich möchte nicht auf die Dateierweiterung (.msm) verlassen.

Antwort

1

Ich bin mir nicht sicher, ob Mergemodulen eine magische Zahl, aber wenn Sie schauen, um irgendwie eine allgemeine Datei zu überprüfen und festzustellen, ob es sich um eine .msm ist oder nicht, vielleicht könnten Sie etwas tun:

  1. Werfen sie einen Blick auf die VBScripts hier - https://msdn.microsoft.com/en-us/library/windows/desktop/aa372865(v=vs.85).aspx

  2. eine benutzerdefinierte VB Script schreiben, um zu versuchen Opendatabase() in der Datei aufrufen, um zu sehen, ob es eine gültige Installer-Datenbankdatei ist.

  3. Verwenden Sie WiRunSQL.vbs, um eine SQL-Anweisung für die Datei auszuführen, und prüfen Sie, ob die Tabelle "Property" einen Wert für "ProductName" enthält.
    a. Wenn ja, ist es ein .msi
    b. Wenn nicht, ist es eine .msm

+0

Guter Hinweis auf die Microsoft-Funktionen. Welche SQL-Anweisung muss ich ausführen? – stackoverflowwww

+0

Ich habe es in Python mit dem Modul 'msilib' geschafft. Ich werde meine vollständige Lösung unten veröffentlichen. – stackoverflowwww

Verwandte Themen