Frage

Ich habe einen Windows Server 2003-System, das für Terminal-Service verwendet wird. Wir verwenden keine Roaming-Profile. Wir haben keine Anmeldeskripts verwenden. Ich habe etwa dreißig bis vierzig Konten, die in diesem System anmelden und als solche haben lokale Profile.

Eine der Softwarepakete, die auf dieses System installiert werden verwendet HKCU / Software reg Baum für seine Lizenzierung und so hat jeder Benutzer den Lizenzschlüssel in ihrem lokalen Profil.

Wie kann ich alle diese unterschiedlichen Profile Register in einer deterministischen Art und Weise aktualisieren?

War es hilfreich?

Lösung

Es gibt mehrere Möglichkeiten zu erreichen, was Sie wollen - ein clunkier als die andere. Terminal-Server kann ein Deployment Alptraum - Benutzer keine Rechte haben laufen msiexec.exe und damit MSI Selbstreparatur scheitern könnte. Deshalb Allgemeinen ziehe ich verwenden Batch-Dateien , Skripte oder reg Dateien für die Art von Situation, die Sie konfrontiert sind.

Ich würde verwenden Microsofts Active Setup-Funktion . Dies ist nur ein ausgefallener Name für eine Funktion, die Sie zu „laufen etwas einmal pro Profil auf Login“ ermöglicht. Hier ist eine gute Erklärung: http://www.etlengineering.com/installer/activesetup .txt

Hier ist ein Beispiel aktiv-Setup Eintrag für eine MSI-Datei (dies ist der Inhalt einer * .reg-Datei):

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\[ProductCode]]
"StubPath"="[SystemFolder]msiexec.exe /q /fou [ProductCode]"

Der „StubPath“ Befehl kann alles „runnable“ sein, und in Ihrem Fall würde ich vorschlagen, nicht msiexec.exe ausgeführt wird, sondern eine Vbscript über cscript.exe oder einen anderen Batch-Mechanismus (CMD, REG, etc ...) . Der Grund dafür ist, was ich oben gesagt: msiexec.exe nicht erlaubt werden kann, für Terminal-Server-Benutzer ausgeführt werden. Mit anderen Worten, so etwas wie folgt aus:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\MyProduct]
"StubPath"="[SystemFolder]cmd.exe /k C:\SomeScript.cmd"

Es gibt auch andere Möglichkeiten, um Daten hinzuzufügen, zu jedem Benutzerprofil wie mit beworbenen MSI Verknüpfungen und Selbstreparatur , aber ich würde die für Terminalserver nicht empfehlen. Siehe diese serverfault.com Antwort Informationen über Probleme bei der Verwendung von MSI-Dateien auf Registry-Einstellungen .

Andere Tipps

Montieren Sie die Registrierungsstruktur programmatisch, die Schlüssel ändern, dann die Struktur schließen. Alternativ können Sie PSExec / runas verwenden, um die „aktualisieren Sie die Tasten“ Skript als , dass der Benutzer , laufen, die auch die „bearbeiten HKCU“ Problem löst

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top