ICE30
ICE30 sprawdza, czy instalacja składników zawierających ten sam plik nigdy nie instaluje pliku więcej niż raz w tym samym katalogu.
ICE30 przechodzi do każdego składnika w tabeli składników , a następnie określa katalog docelowy składnika z tabeli katalogów . Następnie sprawdza, które z tych składników są instalowane w tym samym katalogu docelowym. Na koniec używa tabeli File, aby sprawdzić, czy żadne z plików w tych składnikach nie ma takiej samej nazwy.
ICE30 sprawdza zarówno długie nazwy plików (LFN) i krótkie nazwy plików (SFN).
ICE30 nie ocenia właściwości w rozwiązaniu katalogów, ponieważ te właściwości mogą ulec zmianie w czasie wykonywania i zmienić schemat rozpoznawania katalogów. Oznacza to, że ICE30 może wykrywać kolizje plików z powodu katalogów o tej samej właściwości w ich ścieżkach, ale nie wykrywa kolizji wynikających z dwóch właściwości o tej samej wartości.
Wynik
ICE30 publikuje komunikat o błędzie dla każdej pary składników, które instalują ten sam plik w tym samym katalogu.
Przykład
Pokazany przykład zwraca dwa razy każdy z następujących błędów.
Błąd lub ostrzeżenie ICE30 | Opis |
---|---|
BŁĄD: plik docelowy "README.1st" jest zainstalowany w folderze "TARGETDIR\PRODUCT" przez dwa różne składniki w systemie SFN: "Component1" i "Component2". Spowoduje to przerwanie zliczania odwołań do składników. | Oba składniki1 i Component2 mają plik o nazwie "READEME.1st". W przypadku używania krótkich nazw plików instalator instaluje katalog Dir1 i Dir2 w tym samym katalogu TARGETDIR\PRODUCT. ICE30 generuje dwa błędy, po jednym dla każdego pliku. W środowisku tworzenia, które wyświetla lokalizacje błędów, pierwszy błąd znajduje się we wpisie jednego pliku w tabeli plików , a drugi w lokalizacji drugiego pliku. |
BŁĄD: Instalacja warunkowego składnika spowoduje zainstalowanie pliku docelowego "README.1st" w folderze "TARGETDIR\COMMON TOOLS" przez dwa różne składniki w systemie LFN: "Component3" i "Component4". Spowoduje to przerwanie zliczania odwołań do składników. | Składnik4 zawiera wpis w kolumnie Warunek tabeli Component i Component3 nie. Jeśli versionNT ma wartość True, składnik4 jest zainstalowany i występuje kolizja z plikiem Readme.1 zawsze instalowanym przez składnik Component3. ICE30 generuje 4 błędy, jedną parę dla SFN, jedną dla LFN. |
OSTRZEŻENIE: Plik docelowy "README.1st" może być zainstalowany w folderze "TARGETDIR\COMMON TOOLS" przez dwa różne składniki warunkowe w systemie SFN: "Component4" i "Component5". Jeśli warunki nie wykluczają się wzajemnie, spowoduje to przerwanie systemu zliczania odwołań do składników. | Ponieważ oba składniki4 i Component5 mają wpisy w kolumnie Warunek tabeli składników , ta kolizja pliku może nie wystąpić. ICE30 publikuje tylko ostrzeżenie, ponieważ warunki muszą być określone w momencie instalacji. ICE30 generuje 4 ostrzeżenia, jedną parę dla SFN, jedną dla LFN. |
tabela składników (częściowa)
Składnik | Katalog | Warunek |
---|---|---|
Składnik1 | Dir1 | |
Składnik2 | Dir2 | |
Składnik3 | Dir3 | |
Składnik4 | Dir3 | VersionNT |
Składnik5 | Dir3 | Wersja9X |
Katalog | Parent_Directory | DefaultDir |
---|---|---|
SOURCEDIR | TARGETDIR | |
Dir1 | SOURCEDIR | Produkt|Component1 Product:. |
Dir2 | SOURCEDIR | Produkt:. |
Dir3 | SOURCEDIR | Wspólne|Typowe narzędzia: |
Plik | Składnik_ | Pod nazwą |
---|---|---|
Plik1 | Składnik1 | README.1st |
Plik2 | Składnik2 | README.1st |
Plik3 | Składnik3 | README.1st |
Plik4 | Składnik4 | README.1st |
Plik5 | Składnik5 | README.1st |
Tematy pokrewne