Ostatnio chciałem zainstalować oprogramowanie Borland Delphi 2005 na stacji z Windows 7. Jednak okazało się, że oprogramowanie z przed 5 lat jest na tyle przestarzałe iż instalacja na nowoczesnym systemie nie jest możliwa. Pomijając ciągłe komunikaty o niezgodności komponentów koniecznych do zainstalowania/działania środowiska (znane problemy z ….) okazało się, że instalacja biblioteki dotNet 1.1 wysypuje się uniemożliwiając dalsza instalacje.
Dokładnie to nie mam pojęcia z czego to wynika, przy Win7 dostaje tylko komunikat:
W aplikacji (Microsoft .NET Framework 1.1, od dostawcy Microsoft) wystąpił następujący problem: To oprogramowanie powoduje znane niezgodności z usługami IIS na tej platformie.
Instalator wysypuje się przy próbie rejestracji “System.EnterpriseServices.dll”.
dotNet1.1 jest jedna z tych, do których nowe dotNet-y nie są kompatybilne wstecz, więc posiadane biblioteki w systemie nie robią na instalatorze Delphi żadnego wrażenia. Okazuje się jednak, że Microsoft rozwiązał problemy z ta biblioteką w service pack-u, jednak nie rozprowadza wersji biblioteki z zaszytym servis packiem, więc nie da się jej i tak zainstalować ( kolejna niespodzianka). Cooż pozostaje zapodać ręcznie servis pack do instalatora biblioteki.
Czas zacząć operację …..
1. Ściągamy potrzebne pliki: dotnetfx.exe , NDP1.1sp1-KB867460-X86.exe .
2. Wrzucamy ściągnięte pliki do jakiegoś katalogu np. c:\temp.
3. Uruchamiamy okno linii komend (cmd) jako administrator i przechodzimy do katalogu gdzie wrzuciliśmy pobrane pliki.
4. Na początek powinniśmy rozpakować instalator. Robimy to podmieniając instrukcje instalacyjne zdefiniowane przez producenta używając do tego przełącznika /c:, dalej wykonujemy instalację (przełącznik /a ) we skazanym miejscu (parametr TARGETDIR, podajemy ścieżkę gdzie składujemy nasze pliki). Wykonujemy to odwołując się do zaszytego w pliku exe instalatora msi, za pomocą interpretera msiexec.exe.
dotnetfx.exe /c:"msiexec.exe /a netfx.msi TARGETDIR=C:\Temp"
Po wykonaniu powyższego polecenia, wyświetli się komunikat z prośbą o potwierdzenie wykonania instalacji.
5. Teraz zajmiemy się plikiem aktualizacji NDP1.1sp1-KB867460-X86.exe. Musimy wyodrębnić z niego plik aktualizacji pomijając cała otoczkę, Zrobimy to używając przełącznika /Xp: plik docelowy (korzystająć z okazji zmieńmy nazwę na bardziej ludzką np. netfxsp1.msp).
NDP1.1sp1-KB867460-X86.exe /Xp:C:\Temp\netfxsp1.msp
6. Teraz musimy zaaplikować uzyskany patch do naszej biblioteki, robimy to za pomocą znanego programu msiexec.exe wraz z przełącznikiem instalacji (/a) i wciągnięcia poprawki (/p)
msiexec.exe /a c:\Temp\netfx.msi /p c:\Temp\netfxsp1.msp
7. Pozostaje nam tylko uruchomić poprawiony plik netfx.msi, który już bez problemu powinien zainstalować nam .NET Framework 1.1. w systemach Windows Vista & 7.
Dodatki:
Więcej o msiexec.exe tutaj.
Wszelkie przełączniki plików można zobaczyć uruchamiając je z przełącznikiem /? np.
dotnetfx.exe /?
Brak komentarzy:
Prześlij komentarz