Freigeben über


ICE30

ICE30 überprüft, dass die Installation von Komponenten, die dieselbe Datei enthalten, niemals mehr als einmal im selben Verzeichnis installiert.

ICE30 wechselt zu jeder Komponente in der Component-Tabelle und bestimmt dann das Zielverzeichnis der Komponente aus der Verzeichnistabelle. Anschließend wird überprüft, welche dieser Komponenten im selben Zielverzeichnis installiert werden. Schließlich wird die Dateitabelle verwendet, um sicherzustellen, dass keine der Dateien in diesen Komponenten denselben Namen hat.

ICE30 überprüft sowohl lange Dateinamen (LFN) als auch kurze Dateinamen (SFN).

ICE30 wertet keine Eigenschaften in der Auflösung von Verzeichnissen aus, da sich diese Eigenschaften zur Laufzeit ändern und das Verzeichnisauflösungsschema ändern können. Dies bedeutet, dass ICE30 Dateikonflikte aufgrund von Verzeichnissen mit derselben Eigenschaft in ihren Pfaden erkennen kann, aber keine Kollisionen erkennt, die sich aus zwei Eigenschaften ergeben, die denselben Wert aufweisen.

Ergebnis

ICE30 sendet eine Fehlermeldung für jedes Komponentenpaar, das dieselbe Datei im selben Verzeichnis installiert.

Beispiel

Das gezeigte Beispiel gibt jeden der folgenden Fehler zweimal zurück.

ICE30-Fehler oder -Warnung Beschreibung
FEHLER: Die Zieldatei 'README.1st' wird in 'TARGETDIR\PRODUCT' von zwei verschiedenen Komponenten auf einem SFN-System installiert: 'Component1' und 'Component2'. Dadurch wird die Komponentenreferenzzählung unterbrochen. Component1 und Component2 haben beide eine Datei mit dem Namen 'READEME.1st'. Bei Verwendung kurzer Dateinamen installiert das Installationsprogramm Sowohl Dir1 als auch Dir2 im selben Verzeichnis, TARGETDIR\PRODUCT.
ICE30 generiert zwei Fehler, eine für jede Datei. In einer Erstellungsumgebung, in der Fehlerspeicherorte angezeigt werden, befindet sich der erste Fehler am Eintrag einer Datei in der Dateitabelleund die zweite am Speicherort der anderen Datei.
FEHLER: Die Installation einer bedingten Komponente würde dazu führen, dass die Zieldatei "README.1st" in "TARGETDIR\COMMON TOOLS" von zwei verschiedenen Komponenten in einem LFN-System installiert wird: "Component3" und "Component4". Dadurch würde die Zählung von Komponentenverweisen abgebrochen. Komponente4 enthält einen Eintrag in der Spalte "Bedingung" der Tabelle Komponente und Komponente3 nicht. Wenn VersionNT- "True" ist, wird Component4 installiert, und es wird eine Kollision mit der Readme.1st immer von Component3 installiert.
ICE30 generiert 4 Fehler, ein Paar für SFN, eines für LFN.
WARNUNG: Die Zieldatei 'README.1st' kann in 'TARGETDIR\COMMON TOOLS' von zwei verschiedenen bedingten Komponenten auf einem SFN-System installiert werden: 'Component4' und 'Component5'. Wenn sich die Bedingungen nicht gegenseitig ausschließen, wird dadurch das Komponentenverweiszählsystem abgebrochen. Da "Component4" und "Component5" beide Einträge in der Spalte "Bedingung" der Tabelle Komponente enthalten, dieser Dateikonflikt möglicherweise nicht auftritt. ICE30 sendet nur eine Warnung, da die Bedingungen zum Zeitpunkt der Installation ermittelt werden müssen.
ICE30 generiert 4 Warnungen, ein Paar für SFN, eines für LFN.

 

Komponententabelle (teilweise)

Bestandteil Verzeichnis Zustand
Komponente1 Dir1
Komponente2 Dir2
Komponente3 Dir3
Komponente4 Dir3 VersionNT
Komponente5 Dir3 Version9X

 

Verzeichnistabelle

Verzeichnis Parent_Directory DefaultDir
SOURCEDIR   TARGETDIR
Dir1 SOURCEDIR Produkt|Component1 Product:.
Dir2 SOURCEDIR Produkt:.
Dir3 SOURCEDIR Allgemein|Allgemeine Tools:

 

Dateitabelle (teilweise)

Datei Bestandteil_ Dateiname
Datei1 Komponente1 README.1st
Datei2 Komponente2 README.1st
Datei3 Komponente3 README.1st
Datei4 Komponente4 README.1st
Datei5 Komponente5 README.1st

 

ICE Reference