Představte si mé zděšení, když jsem chtěl jednoho dne odinstalovat jednu z aplikací, které pro vás testuji a místo obvyklého seznamu nainstalovaných aplikací, ze kterého je možno dotyčnou aplikaci vybrat a tak ji odinstalovat, se mi zjevila jen prázdná obrazovka. Pusto prázdno, ani jedna položka, ani jeden nainstalovaný program. Po relativně krátkém čase jsem se dopátral, že prostě WM Smartfoun (nevím zda pro PocketPC platí to samé) je omezen 50-ti instalovanými aplikacemi, které je schopen tento seznam pojmout a zobrazit.
Ono naštěstí jde jen o limit zobrazení v nabídce „Nastavení -> Odebrat programy“ a nejde tedy o limit počtu programů, které je možno do WM zařízení nainstalovat. Ale i tak. Existuje sice možnost odinstalovat program pomocí ActiveSync a zde položky menu „Add/Remove Programs…“, nicméně zde nejsou zobrazovány ty aplikace, jež jste instalovali pomocí CAB souboru přímo v zařízení.
Jak tedy nyní regulérně odinstalovat určitou aplikaci, když není vlastně z čeho vybírat (a nechce se mi to dělat ručně podle instalačního XML) a seznam instalovaných aplikací je prázdný ?
Systém zaznamenává všechny informace o nainstalovaných programech do registru v klíči „HKEY_LOCAL_MACHINE\ Security\AppInstall“. Letmým pohledem do registrů uvidíme, že opravdu všechny položky, které očekáváme v „Nastavení -> Odebrat programy“ jsou zde přítomny a zobrazeny jako podklíče. Jen je prostě systém v tomto dialogu neumí zobrazit a místo třeba 52 aplikací nezobrazí ani jednu a tváří se, jako že je seznam prázdný. A z tohoto zjištění můžeme vycházet a systému malým dočasným zásahem trochu pomoci; ono totiž nikde nejde oněch zmíněných maximálních 50 záznamů změnit například na 100.
Na pomoc si vezmeme nějaký solidní editor registrů, nejlépe ten, který běží na PC a umožňuje editaci registrů na WM zařízení, což nám usnadní práci. Pod klíčem „HKEY_LOCAL_MACHINE\ Security“ si vytvoříme nový klíč např. s názvem Backup jak vidíte na prvním obrázku. Potom do něj zkopírujeme obsah, tedy včetně všechny podklíčů, klíče „HKEY_LOCAL_MACHINE\ Security\AppInstall“, čímž vytvoříme kopii všech dat v tomto klíči.
V druhé fázi již můžeme volně smazat pár podklíčů z „HKEY_LOCAL_MACHINE\ Security\AppInstall“ tak, aby jich zbylo méně než 50 a tím se bude seznam z „Nastavení – Odebrat programy“ zobrazovat správně. Samozřejmě tam musíme nechat klíče těch aplikací, které pak chceme odinstalovat, toť se rozumí. V mém případě (viz druhý obrázek) stačilo odebrat 4 klíče „Astraware“ a počet klesl na 49 a vše pak již bylo OK. Poté, co se již seznam zobrazuje a my tak mohli regulérně odinstalovat požadovanou aplikaci, můžeme „vrátit“ dočasně smazané klíče zpět ze zálohy v klíči Backup (nejlépe již bez té odinstalované).
Druhou, a pro někoho možná schůdnější variantou je: přejmenovat klíč „HKEY_LOCAL_MACHINE\ Security\AppInstall“ na například „HKEY_LOCAL_MACHINE\ Security\AppInstallBackup“ a poté vytvořit nový klíč právě s názvem „HKEY_LOCAL_MACHINE\ Security\AppInstall“ a do něj zkopírovat jen ten klíč (klíče) z „HKEY_LOCAL_MACHINE\ Security\AppInstallBackup“, které se týkají aplikace, kterou chceme odinstalovat. Poté, co aplikaci normálně odinstalujeme, je dobré opět přejmenovat klíč „HKEY_LOCAL_MACHINE\ Security\AppInstallBackup“ zpět na „HKEY_LOCAL_MACHINE\ Security\AppInstall“.
Při editaci registrů buďte vždy opatrní, nespěchejte a nebuďte zbrklí ať si to ještě víc nepohnojíte.
A teď vážně: pobavil jsi mě -:)
http://data1.edisk.cz/stahni/37054/Uninstaller.zip_8.39kB.html