Wymiana plików DLL

Instalacja systemu Windows 98 może bez ostrzeżenia uniemożliwić pracę aplikacji producentów niezależnych od Microsoftu.

Instalacja systemu Windows 98 może bez ostrzeżenia uniemożliwić pracę aplikacji producentów niezależnych od Microsoftu.

Program instalujący system Windows 98 jest tak napisany, że z rozmysłem ingeruje w oprogramowanie konkurujące z produktami opracowanymi przez Microsoft. Usuwa on biblioteki towarzyszące tym aplikacjom, wstawiając w to miejsce nowe wersje plików DLL używanych przez system Windows 98, nawet jeśli są one starsze niż aktualnie znajdujące się na dysku.

W skład systemu wchodzi nowe narzędzie, któremu Microsoft nadał nazwę VCM (Version Control Manager). Śledzi ono, które biblioteki są wymieniane, i zawiera mechanizm umożliwiający przywrócenie przez użytkownika wcześniejszych, usuniętych podczas instalacji wersji plików. Program instalacyjny nie powiadamia, niestety, użytkowników o tym, że niektóre wersje bibliotek mogą być zastąpione innymi, a w przypadku wystąpienia kłopotów (gdy pewna aplikacja odmawia posłuszeństwa) można skorzystać z usług narzędzia VCM, eliminującego przyczynę problemu.

Windows 98 zmienia nie tylko pliki DLL, niewielkie programy współdzielone przez wiele aplikacji zainstalowanych w komputerze, ale nieraz i inne pliki współdzielone. Jeśli program instalacyjny systemu wykryje, że konkurencyjnym aplikacjom towarzyszą nowsze wersje bibliotek niż dołączone do Windows 98, to przepisuje je w inne miejsce, a do katalogu systemowego zapisuje wersje starsze, znajdujące się na dysku instalacyjnym. W efekcie niektóre programy po zainstalowaniu Windows 98 zaczynają pracować błędnie bądź odmawiają posłuszeństwa.

S. Sanford z Microsoftu skomentował to rozwiązanie w ten sposób: "Chcieliśmy być pewni, że instalowany produkt reprezentuje gotowy do użycia, pracujący poprawnie system operacyjny". Praktyka taka stawia jednak aplikacje oferowane przez niezależnych producentów oprogramowania w bardzo niekorzystnej sytuacji. Często przestają one funkcjonować, a użytkownik nie zna przyczyny.

Oto przykład takiej sytuacji. W jednym z testowanych komputerów program instalujący system Windows 98 zamienił trzy współdzielone pliki:

  • Twain.dll 1.6.0.3 (plik obsługujący wiele rodzajów skanerów i innych urządzeń I/O)

  • Msconv98.dll 1997.4.2

  • W95inf32.dll 4.71.17

    Pliki te zostały zamienione na starsze wersje bibliotek:

  • Twain.dll 1.6.0.1

  • Msconv97.dl 1997.3.12

  • W95inf32.dll 4.71.16

    Plik Twain jest popularnym sterownikiem, który obsługuje wiele skanerów i innych urządzeń. Sterowniki tego rodzaju są najczęściej tworzone przez Microsoft, a następnie udostępniane niezależnym producentom oprogramowania, którzy dołączają je do projektowanych przez siebie aplikacji. Jednak Windows 98 wykorzystuje starszą wersję tej biblioteki bez względu no to, że może to unieruchomić niejedną aplikację zainstalowaną wcześniej na komputerze.

    Program Version Conflict Manager pozwala na wybranie odpowiedniego pliku DLL i zadeklarowanie, aby nie był on wymieniany na inną wersję. Jednak użytkownicy z reguły nie wiedzą, jakie aplikacje korzystają z usług współdzielonych plików i które wersje bibliotek należy wybrać. W efekcie nie mogą stwierdzić, która wersja jest "lepsza". Ponadto program VCM jest "schowany" tak głęboko, że trudno się do niego dostać. Aby skorzystać z jego usług, trzeba kliknąć kolejno opcje: Start, Programy, Akcesoria, Narzędzia systemowe, Informacje o systemie, Narzędzia i dopiero Version Conflict Manager.

    Nie jest to wcale nowy problem. Windows 95 też dopuszczał sytuację, w której nowo instalowana aplikacja zamieniała istniejące wersje bibliotek DLL na starsze. Wielokrotnie zwracałem uwagę na to, że użytkownik powinien mieć do dyspozycji narzędzie, które kontrolowałoby ten proces. Niestety, program Version Control Manager nie pełni takiej funkcji. Narzędzie to uruchamia się automatycznie tylko podczas instalacji Windows 98. Gdy system jest już zainstalowany, VCM wyłącza się i użytkownik jest bezsilny. Jeśli aplikacja opracowana przez niezależnego producenta wywoła problemy związane z niezgodnością wersji bibliotek, to VCM nie udostępnia informacji, która pozwalałby zlokalizować przyczynę występowania błędu.

    Po zainstalowaniu systemu Windows 98 warto od razu sprawdzić, które współdzielone pliki zostały zmienione na inne. VCM udostępnia informacje o nazwach zamienionych plików i numerach ich wersji.

    <hr size=1 noshade>Brian Livingston jest współautorem książki Windows 95 Secrets Gold i wielu innych pozycji o systemie Windows. E-mail: [email protected] .

    Na podstawie tygodnika InfoWorld, wydawanego przez IDG, opr. jch.

  • W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

    TOP 200