Frage

In einem Web-Server-Installationsprogramm, dass ich beibehalten habe, verfolgen wir, ob hatte IIS nicht das Installationsprogramm installiert 7 und / oder ASP (unter Vista oder höher) und einen entsprechenden Wert in der Registrierung speichern, wenn so. Während einer Deinstallation, wenn das Wert ist da, und keine andere Websites auf dem Computer IIS verwenden, den Benutzer wird gefragt, ob oder nicht IIS / ASP entfernt werden. Wenn ja, entfernen wir was auch immer wir installiert haben.

Im Folgenden ist der Befehl, dass wir zu entfernen, um zu starten IIS 7 und ASP (Zeilenumbrüche für Klarheit hinzugefügt):

C:\Windows\system32\pkgmgr.exe /norestart /uu:IIS-WebServerRole;
IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;
IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;
IIS-ApplicationDevelopment;IIS-ASP;IIS-ISAPIExtensions;
IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;
IIS-RequestMonitor;IIS-Security;IIS-RequestFiltering;
IIS-HttpCompressionStatic;IIS-WebServerManagementTools;
IIS-ManagementConsole;WAS-WindowsActivationService;
WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI

Dies funktioniert auf 32-Bit-Systemen funktioniert aber nicht bei allen auf 64-Bit Systeme, auch mit WOW64 Umleitung deaktiviert. (Ignoriere den / norestart Parameter, wie der Installer einen Neustart am Ende der tut installieren, wenn erforderlich.) Ich habe diesen Befehl in einen Admin-Level-Befehl sogar versucht, die Eingabe Prompt (ohne den / norestart Parameter), aber ohne Erfolg.

Der Befehl, dass wir während der Anwendung installieren IIS 7 / ASP zu installieren, ist in ähnlicher Weise lang, und es funktioniert immer, so dass ich nicht, dass das Problem, dass das ist vorstellen uninstall Befehlszeile ist zu lang. (Um diese Theorie zu testen, habe ich sogar versucht, den Befehl in zwei Befehle zu brechen, ist einer der ASP-Komponenten nur zu entfernen gefolgt von einer den Rest zu entfernen. Das gleiche Problem, nichts entfernt wurde.)

Gibt es einen anderen Befehl, tun würde, was wir auf 64-Bit-Systemen wollen? Wenn so tun wir zu deaktivieren WOW64 Umleitung haben, und wird es auch Arbeit auf 32-Bit Systeme? (Es wird nur auf Vista und spätere Systeme genannt werden. Bei früheren Systeme setzen wir auf den Anwender darauf achten, dass IIS und ASP sind vorinstalliert.)

War es hilfreich?

Lösung 2

Wie sich herausstellt, ist das Problem, dass ich mit irgendetwas mit pkgmgr.exe zu tun nicht, es sei denn Sie Mangel an Geduld zählen wollen, wenn eine manuelle Prüfung tun, um zu sehen, warum es nicht funktionierte. Im Installationsprogramm war das Problem der Installation etwas Skript zu tun, die den Befehl verhinderten ins Leben gerufen zu werden. Im Fall der manuellen Tests, ich warte nur nicht lange genug für den Befehl zu beenden läuft. (Es dauert etwa ein paar Minuten, in dem Fall der obigen Befehlszeile.)

Andere Tipps

Ich bin nicht sicher, dies gilt auch für Ihr Problem, aber ich habe durch die Tatsache wiederholt worden gebissen, dass ein 32-Bit-Programm, das die HKEY_LOCAL_MACHINE\SOFTWARE Taste auf 64-Bit-Windows-Zugriffe tatsächlich auf die HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node Schlüssel umgeleitet werden. Wenn Sie 32 sind Mischen und 64 Bit verarbeitet der 64-Bit-Prozess wird nicht die gleiche Sicht auf Registry wie der Prozess 32 Bit haben.

Ich habe viele Lösungen ausprobiert, einschließlich der oben gegeben. Ich kann einfach nicht IIS 7 auf Windows Enterprise x64 entfernen Ich schließlich landete IIS neu zu installieren und dann zu deaktivieren IIS Admin und World Wide Web Publishing Service.

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