Wo sind Win32_Product-Einträge tatsächlich in Server2K12- oder Win * -Varianten gespeichert?

458
mrlitsta

Aus welcher Windows-Datenbank oder Datenquelle bezieht Win32_Product seine Informationen, wenn nicht aus der Registrierung? Zum Beispiel,

if(Get-WmiObject -Class Win32_Product -Filter "Name like '%PRODUCT%'") { echo Write-Host "PRODUCT IS Installed"  exit 0; }  

gibt viele Informationen über das installierte Produkt zurück (auch wenn diese Methode andere Probleme aufweist ( https://stackoverflow.com/questions/25268491/alternative-to-win32-product ).

Jetzt bin ich neugierig, aber ich habe nicht viel darüber herausgefunden, woher wmi diese Informationen eigentlich bezieht.

Hintergrund:

Nachdem ich mit einem beschädigten Deinstallationsprogramm in einen kleineren Durcheinander geraten war, für einen Sicherungsclient, der mit einem anderen Sicherungsclient in Konflikt steht, den ich installieren muss, habe ich versucht, den Client manuell zu deinstallieren. Dazu gehörten:

  • Verschieben / Entfernen der c: \ Program Files \ -Dateien für den Client (gesichert)
  • Durchsuchen der Registrierung und Entfernen von Einträgen wie: \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall (Programme hinzufügen / entfernen)
  • Abmelden der Client-Dienste mit "sc delete"
  • Entfernen des Ordners C: \ Windows \ Installer \ (gesichert)

Eine Abfrage an Win32_Product zeigt an, dass die Software noch installiert wird. Programme hinzufügen / entfernen sind natürlich nicht (da ich die Registrierungseinträge entfernt habe).

Ich kann detaillierter auf das eingehen, was ich vor der manuellen Route versucht habe, falls nötig.

1

0 Antworten auf die Frage