Wo kommt der Programme Hinzufügen/Entfernen, ziehen Sie die Daten für die "Installiert Am" - Spalte?

Arbeite ich an der Replikation der Windows 7/8 add remove programs-applet mit VBScript. Ich habe das Skript so, dass alle die richtigen Einträge, aber ich habe nicht in der Lage gewesen, um es auch an die richtige zusätzliche Informationen über den Windows-zeigt.

Als Beispiel: Windows-Meldung "Installiert Am" - Spalte mit einem Datum. In einigen Fällen wird diese von den relevanten registry-Schlüssel wie:

HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\InstallDate
HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\InstallDate
HKUS\USER - SID\Software\Microsoft\Windows\CurrentVersion\Uninstall\InstallDate

Sehr wenige Tasten, tatsächlich haben die InstallDate Wert und Windows bekomme immer diese Spalte gefüllt. Ich habe es geschafft, greifen die Mehrheit der vermissten stammt aus dem WMI:

 ("SELECT * FROM Win32_Product Where Description = " & "'" & strName & "'" & "")
for each objSoftware in colSoftware
Date = objSoftware.InstallDate

Diese gibt nur die Daten aus dem MSI-installierten Anwendungen.

Ich dachte, vielleicht Windows "Ahnen" die Daten basieren auf Programm-Dateien/ProgramData-Datei stammt, aber ich habe versucht manuell ändern, und es ist nicht wider in Hinzufügen/Entfernen. Ich versuche, herauszufinden, wie man Windows zieht dieses Datum. Ich habe bemerkt, CCleaner reproduzieren können, hinzufügen/entfernen, ohne Fehler, so dass diese information verfügbar ist irgendwo. Ich habe gerade erschöpft mich auf der Suche nach es.

  • Der Prozess ist vermutlich langsam, weil die Auswahl von Win32_Product listet nicht nur die Objekte, sondern auch (re-)validiert diese. Eine bessere Möglichkeit ist das Lesen der Informationen aus der Uninstall Schlüssel in der registry.
  • Mein problem ist, dass die meisten Daten sind nicht in der uninstall-Schlüssel, wie ich schon erwähnt habe. Weniger als 10% der Einträge auf meinem system haben die InstallDate als Wert. Windows wird immer das Datum von woanders, und das Skript wird nicht wirklich wirksam sein, bis ich weiß, wo dieser Ort ist.
InformationsquelleAutor KevinD | 2013-09-08
Schreibe einen Kommentar