28. října 2012

Jak jsem vyřešil problém B8007007B, aneb konec problémů s instalací service packu pro Windows 7

Již prakticky rok jsem se potýkal s problémy při instalaci Service Packu pro Windows 7 Home Premium. Každý pokus o instalaci tohoto balíčku mi skončil při instalaci chybou B8007007B a nikdy jsem jej tak nedokázal nainstalovat. Samozřejmě mám zcela legální a aktivovaný systém, který byl předinstalován na mém notebooku ASUS K52De.

Zkoušel jsem i pomocí Google najít řešení tohoto problému, avšak nikdy jsem nenašel to správné. Zvláštní bylo, že všechny ostatní aktualizace mi šly vždy nainstalovat, problémy jsem měl pouze s instalací service packu a IE9, který je na něj pravděpodobně závislý, protože mi nešel také nainstalovat.

Až včera, při řešení problému s nástrojem SFC, který mi odmítal poslušnost a místo toho vypisoval chybovou hlášku "program Ochrana prostředků systému Windows nemohl provést požadovanou operaci" jsem výše uvedený problém vyřešil - protože oba tyto problémy měly stejného viníka - drobnou chybičku v registru Windows.

K vyřešení těchto dvou problémů si stačilo přečíst tuto stránku. Jak se tedy ukázalo, problém byl v tom, že záznam v registru, který systému říká, kde se ve vašem počítači nachází složka Program Files a Program Files(x86) obsahoval drobnou chybu. Cesta, která zde byla totiž uvedena obsahuje na konci lomítko "\", což nedokázal SFC i instalátor překousnout, a proto odmítli oba poslušnost.

Stačilo tedy u u obou záznamů toto lomítko na konci smazat a uzavřít editor registru. Ihned poté, tedy bez restartu, dokázal SFC zkontrolovat systém a Windows Update nainstalovat service pack bez jakýchkoli problémů.

Jak tedy opravit tuto chybu

1) Nejprve si spusťte editor registrů, stačí, když si necháte v menu Start vyhledat nástroj jménem "regedit". Je pravděpodobně potřeba, abyste jej spouštěli z účtu, který má administrátorská práva.

2) Jakmile se vám tento nástroj spustí, stačí pomocí stromové struktury vlevo vyhledat níže uvedené klíče:
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir (x86)
Tyto klíče pak obsahují informaci (cestu) o tom, kde se nacházejí výše uvedené adresáře. U každé z těchto cest  (např. C:\Program Files\) postupně smažte znak "\", ale samozřejmě pouze na konci celého řetězce, nikde jinde!

3) Nyní můžete tento nástroj zavřít

Pokud jste provedli vše správně, pak by mělo být již vše v pořádku a instalaci service packu pro Windows 7 již nic nebrání. Stejně tak by měl být SFC v pořádku a měl by dokončit kontrolu (a případnou opravu) vašeho systému.

Závěrem

Konečně jsem tak po roce nainstaloval service pack i novou verzi Internet Exploreru, kterou mám ale spíše pro úplnost, protože tento prohlížeč nepoužívám. 



7 komentářů:

  1. Windows 7 Home, tyto řetězce nejsou v registru:

    •HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir
    •HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir (x86)

    Kdepak jste to tam našel pane¨? Děkuji za odpověď Lichteneger

    OdpovědětVymazat
  2. Je to tam, ale musite kliknout primo na polozku CurrentVersion a na leve strane se vam zobrazi pozadovane polozky.

    OdpovědětVymazat
  3. Ahoj, řetězec jsem našel, ale znak "\" nikde navíc není... nebo kdy bych ho měl hledat? údaj hodnoty nebo změnit binární data?

    Díky

    OdpovědětVymazat
    Odpovědi
    1. Ahoj, na konci těch nalezených cest je \, mělo by ho stačit smazat. Hlavně nic jiného neměnit.

      Vymazat
    2. tedy např: "C:\Program Files\" smazat poslední \

      Vymazat
    3. ještě po smazání případně ověřit, že se ti změna uložila a v nejhorším případě pak ještě zkusti restartovat PC. Ale mě to myslím fungovalo i bez toho restartu.

      Vymazat
  4. Ahoj Kubo, sekl jsem se u tabulky Editor registru, strom rozklikany až CurrrentVersion a v pravém okne označen ProgramFilesDir asi by byl nejlepší screen ale není kam ho sem umístit.
    Jde o to ře zmíněný registr ProgramFilesDir uz nejde otevřít .......pokud se o to mám snažit , kde vzít tedy adresu umístění kterou mam opravit.Promin jestli jsem postup spatne pochopil ale nevim jak dal.díky

    OdpovědětVymazat