Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Streszczenie

W tym artykule opisano, jak można zainstalować wiele aktualizacji produktu systemu Windows (na przykład aktualizacji krytycznych, aktualizacji zabezpieczeń lub poprawek) używających programu Hotfix.exe (Microsoft Windows NT 4.0) lub programu Update.exe (Microsoft Windows 2000, Microsoft Windows XP lub Microsoft Windows Server 2003) z tylko jednym ponownym uruchomieniem komputera. Ten artykuł jest przeznaczony dla administratorów i specjalistów IT. Aktualizacje produktu systemu Windows, które używają programu Hotfix.exe lub Update.exe, można zainstalować osobno lub razem z systemem Windows (z dodatkiem Service Pack lub bez dodatku).


Uwaga: Procedura opisana w niniejszym artykule nie działa w odniesieniu do aktualizacji produktu, które nie korzystają z programu Hotfix.exe lub Update.exe jako programu instalacyjnego. Na przykład aktualizacje programu Internet Explorer dla systemów Windows NT 4.0, Windows 2000 i Windows XP korzystają z procesu instalacji opartego na plikach INF, a nie na programie Update.exe. Efektem tego jest niemożność zastosowania tej procedury w celu zainstalowania wielu aktualizacji programu Microsoft Internet Explorer z tylko jednym ponownym uruchomieniem komputera z systemem Windows NT 4.0, Windows 2000 lub Windows XP. Ponieważ aktualizacje programu Internet Explorer dla systemu Windows Server 2003 używają programu Update.exe jako programu instalacyjnego, można użyć tej procedury do zainstalowania ich.

Aby uzyskać dodatkowe informacje dotyczące tych tematów, odwiedź następujące witryny firmy Microsoft w sieci Web:

Windows 2000

Przewodnik po instalowaniu i wdrażaniu poprawek w systemie Microsoft Windows 2000
Windows XP

Przewodnik po instalowaniu i wdrażaniu aktualizacji dla systemu Microsoft Windows XP z dodatkiem Service Pack 2
Windows Server 2003 i Windows XP Professional x64 Edition

Przewodnik po instalowaniu i wdrażaniu aktualizacji w systemach Microsoft Windows Server 2003 i Windows XP 64-Bit Edition w wersji 2003
Windows Server 2003 z dodatkiem Service Pack 1

Instalowanie i wdrażanie aktualizacji w systemie Microsoft Windows Server 2003 z dodatkiem Service Pack 1

Więcej informacji

Aktualizacja systemu Windows (na przykład aktualizacja krytyczna, aktualizacja zabezpieczeń lub poprawka) to plik wykonywalny (exe) zawierający jeden lub więcej plików systemowych, które można zastosować do systemu Windows w celu rozwiązania określonego problemu. Pomoc techniczna firmy Microsoft rozprowadza poprawki wśród klientów, którzy są poważnie zagrożeni wystąpieniem określonego problemu. Aktualizacje krytyczne i poprawki zabezpieczeń to aktualizacje zalecane przez firmę Microsoft wszystkim klientom. Aktualizacje krytyczne i poprawki zabezpieczeń można uzyskać w witrynach Windows Update w sieci Web, Microsoft Update w sieci Web i Centrum pobierania Microsoft oraz w innych witrynach firmy Microsoft w sieci Web.

Aktualizacje dla systemów Windows XP x64 Edition, Windows Server 2003, Windows XP i Windows 2000 utworzone po grudniu 2002

Uwaga Aby ustalić, kiedy utworzono daną aktualizację, należy sprawdzić datę modyfikacji programu instalacyjnego Update.exe lub Hotfix.exe w pakiecie aktualizacji.

Aby zainstalować aktualizację systemu Windows na pojedynczym komputerze, należy uruchomić program aktualizacji produktu na komputerze, który ma być zaktualizowany. Aby zainstalować wiele aktualizacji produktów bez ponownego uruchamiania komputera między poszczególnymi instalacjami, należy użyć przełącznika /z.

Opcje wiersza polecenia programu Update.exe

W poniższej tabeli zidentyfikowano opcje (przełączniki) wiersza polecenia obsługiwane przez program Update.exe:Opis przełącznika ------ ----------- /f Wymusza zamknięcie pozostałych programów podczas zamykania systemu. /n Powoduje, że nie są wykonywane kopie zapasowe plików potrzebnych do usunięcia poprawek. /z Powoduje, że komputer nie jest ponownie uruchamiany po ukończeniu instalacji. /q Umożliwia instalację w trybie cichym, bez interakcji użytkownika. /m Umożliwia użycie trybu instalacji nienadzorowanej (Windows 2000). /u Umożliwia użycie trybu instalacji nienadzorowanej (Windows XP). /l Umożliwia wyświetlenie listy zainstalowanych poprawek. Poniższy kod przykładowy stanowi plik wsadowy, który powoduje zainstalowanie wielu aktualizacji produktu i zapewnia, że po ponownym uruchomieniu komputera zostaną zastąpione właściwe pliki.

@echo off
setlocal
set PATHTOFIXES=E:\hotfix

%PATHTOFIXES%\Q123456_w2k_sp4_x86.exe /Z /M
%PATHTOFIXES%\Q123321_w2k_sp4_x86.exe /Z /M
%PATHTOFIXES%\Q123789_w2k_sp4_x86.exe /Z /M

Uwaga Funkcjonalność QChain.exe jest dołączona do wszystkich aktualizacji produktów systemów Windows XP x64 Edition, Windows Server 2003, Windows XP i Windows 2000, w których jest używany program Update.exe i które wydano od 18 maja 2001. Jednak w aktualizacjach produktów wydanych przed grudniem 2002 występuje problem, który w niektórych okolicznościach może powodować stosowanie niewłaściwych plików binarnych na komputerze. Aby rozwiązać ten problem, w marcu 2003 firma Microsoft wydała zaktualizowaną wersję programu QChain.exe.
Aby uzyskać dodatkowe informacje dotyczące tego problemu lub aby uzyskać zaktualizowaną wersję narzędzia Qchain.exe, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

Podczas łączenia wielu poprawek w łańcuch nie jest instalowany właściwy plik

Wszystkie aktualizacje dla systemów Windows NT 4.0, Windows XP i Windows 2000 utworzone przed grudniem 2002

Uwaga Aby ustalić, kiedy utworzono daną aktualizację produktu, należy sprawdzić datę modyfikacji programu instalacyjnego Update.exe lub Hotfix.exe w pakiecie aktualizacji.

Firma Microsoft wydała narzędzie wiersza polecenia o nazwie QChain.exe. Dzięki programowi QChain.exe administratorzy systemu mogą uszeregować aktualizacje razem. Szeregowanie aktualizacji pozwala zainstalować wiele aktualizacji bez ponownego uruchamiania komputera między poszczególnymi aktualizacjami. Bez tego narzędzia jedyną obsługiwaną metodą jest ponowne uruchomienie komputera po instalacji każdej aktualizacji. Narzędzie QChain.exe ma następujące zalety:

  • Zwiększa czas działania serwerów, ponieważ komputery nie są ponownie uruchamiane po każdej instalacji aktualizacji.

  • Umożliwia szybszą instalację wielu aktualizacji na pojedynczym komputerze.

  • Działa w systemach Windows 2000 i Windows NT 4.0.

Uwaga: Funkcje programu QChain.exe są dostępne we wszystkich aktualizacjach systemów Windows XP i Windows 2000, które zostały wydane po 18 maja 2001 roku, jednak istnieje problem dotyczący aktualizacji wydanych przed grudniem 2002 roku, które w pewnych sytuacjach mogą umieścić niewłaściwe pliki binarne na komputerze. W marcu 2003 roku firma Microsoft wydała zaktualizowaną wersję pliku QChain.exe w celu rozwiązania tego problemu.
Aby dowiedzieć się więcej o tym problemie lub uzyskiwaniu zaktualizowanej wersji narzędzia Qchain.exe, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

Podczas łączenia wielu poprawek w łańcuch nie jest instalowany właściwy plik

Łączenie instalacji aktualizacji w łańcuch bez programu QChain.exe nie jest bezpieczne

Jeśli podczas instalowania aktualizacji jakiś plik jest zablokowany lub używany, nie można go zamienić. W rezultacie plik zostanie umieszczony w kolejce oczekujących zmian nazw plików i zostanie zastąpiony po ponownym uruchomieniu komputera. Problem występuje w następującym scenariuszu:

  • Instalujesz aktualizacje A i B bez ponownego uruchamiania komputera między instalacjami.

  • Oba pakiety zawierają plik X. Plik X pakietu A ma wersję 3; poprawka pakietu B zawiera wersję 2. Wersja pliku X na komputerze to wersja 1.

  • Przy instalacji pakietu A umieszcza on swoją wersję pliku X w kolejce oczekujących zmian nazw plików.

  • Przy instalacji pakietu B umieszcza on swoją wersję pliku X w kolejce oczekujących zmian nazw plików.

  • Po ponownym uruchomieniu komputera instalowany jest plik X pakietu B, ponieważ był on instalowany jako ostatni (w kolejce oczekujących zmian nazw plików ostatnim plikiem jest używany plik). W rezultacie zostanie zainstalowana wersja 2, zamiast oczekiwanej wersji 3.

Jeśli poprzednio połączone w łańcuch aktualizacje zainstalowano bez ponownego uruchamiania

Mimo że taka sytuacja zdarza się rzadko, warto sprawdzić, czy na komputerze są wszystkie poprawki, które uznano za zainstalowane. Aby to sprawdzić, użyj narzędzia Qfecheck.exe.
Aby uzyskać więcej informacji dotyczących programu Qfecheck.exe, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

Qfecheck.exe verifies the installation of Windows 2000 and Windows XP hotfixes

Program QChain.exe czyści klucz rejestru używany przez operacje oczekujących zmian nazw plików, aby upewnić się, że po ponownym uruchomieniu komputera zostanie zainstalowana tylko najnowsza wersja pliku.

Aby zainstalować wiele aktualizacji przy jednokrotnym ponownym uruchomieniu

  1. Uruchom instalatora aktualizacji z przełącznikiem -z, aby instalator nie uruchamiał ponownie komputera po instalacji. Możesz dodać przełącznik -m (tryb cichy), jeśli nie chcesz, aby podczas instalacji były wyświetlane monity lub komunikaty.

    Instalator aktualizacji jest jednym z następujących programów:

    • Plik programu samowyodrębniającego się pakietu (na przykład Qnnnnnn_w2k_spx_x86_pl.exe).

    • Hotfix.exe (jeśli wszystkie pliki zostały wyodrębnione z pakietu).

  2. Po zainstalowaniu wszystkich poprawek uruchom program QChain.exe.

  3. Ponownie uruchom komputer.

Aby to zrobić, można również utworzyć plik wsadowy. Poniżej podano przykład pliku wsadowego demonstrującego tę metodę:

@echo off
setlocal
set PATHTOFIXES=ścieżka%PATHTOFIXES%\Q123456_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\Q123321_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\Q123789_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\qchain.exe

Jak uzyskać narzędzie QChain.exe

Funkcjonalność QChain.exe jest dołączona do wszystkich aktualizacji systemów Windows XP i Windows 2000, które wydano od 18 maja 2001. Jednak w aktualizacjach wydanych przed grudniem 2002 występuje problem, który w niektórych okolicznościach może powodować umieszczanie niewłaściwych plików binarnych na komputerze. Aby rozwiązać ten problem, w marcu 2003 firma Microsoft wydała zaktualizowaną wersję programu QChain.exe.
Aby dowiedzieć się więcej o tym problemie lub uzyskiwaniu zaktualizowanej wersji narzędzia Qchain.exe, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

Podczas łączenia wielu poprawek w łańcuch nie jest instalowany właściwy plik

Składnia polecenia QChain.exe

qchain [nazwa_pliku_dziennika] Parametr opcjonalny [nazwa_pliku_dziennika] tworzy plik z migawkami „przed” i „po” klucza oczekujących operacji zmian nazw plików (Pending File Rename Operations).

Przykładowe dane wyjściowe narzędzia QChain.exe

---- Stare informacje w rejestrze ------
Źródło:C:\WINNT\inf\acpi.inf
Wersja: 5.0.2183.1
Lokalizacja docelowa:d:\ntsust\testregchech\1394.inf
Wersja: 5.0.2183.1

Źródło:C:\WINNT\inf\adm_mult.inf
Wersja: 5.0.2184.1
Lokalizacja docelowa:d:\ntsust\testregchech\1394.inf
Wersja: 5.0.2183.1

Źródło:C:\WINNT\inf\banshee.inf
Wersja: 5.0.2080.1
Lokalizacja docelowa:d:\ntsust\testregchech\1394.inf
Wersja: 5.0.2183.1

---- Nowe informacje w Rejestrze ------
Źródło:C:\WINNT\inf\adm_mult.inf
Wersja: 5.0.2184.1
Lokalizacja docelowa:d:\ntsust\testregchech\1394.inf
Wersja: 5.0.2183.1

Ograniczenia narzędzia QChain.exe

Mimo że narzędzie QChain współdziała z większością aktualizacji systemów Windows NT 4.0 i Windows 2000, może nie działać w przypadku aktualizacji zawierających pliki binarne wymienione w następującym kluczu rejestru: Pliki binarne wymienione w tym kluczu rejestru są ładowane do pamięci przy uruchamianiu. Gdy instalator aktualizacji wywoła funkcję GetFileVersionInfo na pliku binarnym z tej listy, instalator odwołuje się do pliku binarnego, który jest już załadowany, a nie do pliku binarnego, który faktycznie znajduje się w lokalizacji docelowej.

Ponieważ pliki binarne wymienione w kluczu rejestru KnownDLLs są ładowane do pamięci przy uruchamianiu systemu, Instalator aktualizacji musi zastąpić docelowy plik binarny poprawionym plikiem binarnym przed ponownym uruchomieniem komputera. Z tego powodu instalator aktualizacji nie tworzy operacji oczekującej zmiany nazwy pliku w celu zastąpienia pliku binarnego podczas ponownego uruchamiania. Zamiast tego aktualizacja przenosi aktualny plik binarny do lokalizacji tymczasowej, umieszcza poprawiony plik binarny w miejscu, gdzie znajdował się bieżący plik binarny, a następnie tworzy operację oczekującej zmiany nazwy pliku w celu usunięcia bieżącego pliku binarnego po ponownym uruchomieniu komputera.

Program QChain ma wpływ tylko na operacje oczekujących zmian nazw plików, które powodują zastąpienie plików binarnych. Nie ma wpływu na operacje oczekujących zmian nazw plików, które powodują usunięcie plików.

Wszystkie aktualizacje systemu Windows NT 4.0 i wszystkie aktualizacje systemu Windows 2000 poprzedzające dodatek SP2 używają funkcji GetFileVersionInfo do identyfikacji wersji pliku. W razie zainstalowania dwóch lub więcej aktualizacji systemu Windows NT 4.0 lub aktualizacji systemu Windows 2000 poprzedzających dodatek SP2, jeśli te aktualizacje zawierają pokrywające się zawartości klucza KnownDLLs, użycie programu QChain do uszeregowania instalacji tych aktualizacji nie zapewni zainstalowania najnowszej wersji poprawionego pliku.

Poniżej został przedstawiony scenariusz ilustrujący, dlaczego program QChain może nie umieścić poprawnej wersji pliku binarnego w systemie:

  • Instalujesz pakiety aktualizacji A i B bez ponownego uruchamiania komputera między instalacjami.

  • Oba pakiety zawierają plik Kernel32.dll, który jest wymieniony na liście KnownDLLs. Pakiet A zawiera plik Kernel32.dll w wersji 3, pakiet B zawiera plik Kernel32.dll w wersji 2, a na komputerze zainstalowana jest wersja 1 tego pliku.

  • Podczas instalowania pakietu A wywołanie funkcji GetFileVersionInfo informuje, że komputer zawiera plik Kernel32.dll w wersji 1. Ponieważ pakiet A zawiera wersję 3, instalator aktualizacji wykrywa potrzebę zastąpienia pliku.

    • Instalator aktualizacji przenosi plik Kernel32.dll w wersji 1 do lokalizacji tymczasowej i tworzy operację oczekującej zmiany nazwy pliku w celu usunięcia pliku Kernel32.dll z lokalizacji tymczasowej podczas ponownego uruchomienia komputera.

    • Plik Kernel32.dll pakietu A w wersji 3 został skopiowany na komputer.

  • Podczas instalowania pakietu B wywołanie funkcji GetFileVersionInfo w dalszym ciągu informuje, że na komputerze jest zainstalowana wersja 1 pliku Kernel32.dll, ponieważ funkcja GetFileVersionInfo odczytuje informacje o wersji z pliku Kernel32.dll, który jest załadowany do pamięci. W pakiecie B znajduje się wersja 2, dlatego poprawka wykrywa potrzebę zastąpienia pliku.

    • Instalator aktualizacji przenosi plik Kernel32.dll, który znajduje się aktualnie na komputerze (plik Kernel32.dll w wersji 3 z pakietu A), do lokalizacji tymczasowej i tworzy operację oczekującej zmiany nazwy pliku w celu usunięcia pliku Kernel32.dll (w wersji 3) z lokalizacji tymczasowej podczas ponownego uruchomienia komputera.

    • Plik Kernel32.dll pakietu B w wersji 2 został skopiowany na komputer.

  • Jest uruchamiany program QChain, ale nie ma operacji oczekujących zmian nazw plików, które miałyby zastąpić pliki, dlatego program QChain nie wykonuje żadnej operacji.

  • Ponieważ pakiet B został zainstalowany jako ostatni, plik Kernel32.dll w wersji 2 z pakietu B znajduje się w poprawnej lokalizacji na komputerze. Z tego powodu jest on ładowany do pamięci przy uruchamianiu komputera. Operacje oczekujących zmian nazw plików usuwają zarówno oryginalny plik Kernel32.dll w wersji 1, jak i plik Kernel32.dll w wersji 3 z pakietu A. W rezultacie na komputerze będzie się znajdował plik Kernel32.dll w wersji 2, a nie w wersji 3.

Jest dostępna poprawka systemu Windows 2000 późniejsza od dodatku SP2, w której funkcja GetFileVersionInfo nie jest już używana w odniesieniu do wymienionych na liście KnownDLLs plików załadowanych do pamięci. Zamiast tego instalator aktualizacji mapuje plik znajdujący się rzeczywiście w lokalizacji docelowej, a następnie wywołuje funkcję GetFileVersionInfo w odniesieniu do tego zmapowanego pliku. Dzięki temu można użyć programu QChain.exe do szeregowania aktualizacji systemu Windows 2000 późniejszych od dodatku SP2. W takim przypadku zostanie zainstalowana najnowsza wersja pliku, niezależnie od kolejności instalowania aktualizacji.

Jeśli odtworzony zostanie poprzedni scenariusz i użyta zostanie w nim aktualizacja systemu Windows 2000 późniejsza od dodatku SP2, poprawka pakietu B zmapuje plik Kernel32.dll pochodzący z pakietu A i rozpozna wersję 3. Wersja 3 jest nowsza niż własna wersja 2 pliku Kernel32.dll w pakiecie B. Dlatego też pakiet B nie zamieni znajdującego się w systemie pliku Kernel32.dll i wersja 3 pliku Kernel32.dll z pakietu A będzie poprawną wersją używaną przez komputer po ponownym uruchomieniu.

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×