Freigeben über


ICE61

ICE61 überprüft die Upgradetabelle, um sicherzustellen, dass die folgenden Bedingungen erfüllt sind:

  • Alle ActionProperty-Eigenschaften sind in der Property-Tabelle nicht vorab erstellt.
  • Alle ActionProperty-Eigenschaften sind öffentliche Eigenschaften.
  • Alle ActionProperty-Eigenschaften sind in der SecureCustomProperties-Eigenschaft enthalten.
  • Alle ActionProperty-Eigenschaften sind für jeden Datensatz in der Upgrade-Tabelle eindeutig.
  • Alle VersionMax-Werte sind nicht kleiner als die entsprechenden VersionMin-Werte.
  • Die Werte „VersionMin“ und „VersionMax“ sind gültige Produktversionen. Das gültige Produktversionsformat finden Sie unter der ProductVersion-Eigenschaft.
  • Es wird nicht versucht, eine neuere oder gleiche Version des aktuellen Produkts zu entfernen.

Das Versäumnis, eine von ICE61 gemeldete Warnung oder einen Fehler zu beheben, führt in der Regel zu Problemen beim Upgrade Ihrer Anwendung. Abhängig vom genauen Fehler kann dies alles sein, vom Zurücklassen von Dateien aus der älteren Version über das Löschen von Dateien aus der älteren Version, obwohl sie von der neuen Anwendung benötigt werden, bis hin zum vollständigen Fehlschlagen des Upgrades.

Ergebnis

ICE61 gibt eine Warnung oder einen Fehler aus, wenn eine der oben genannten Bedingungen nicht erfüllt ist.

Beispiel

ICE61 meldet die folgenden Fehler und Warnungen für die gezeigten Beispiele.

This product should remove only older versions of itself. The Maximum version is not less than the current product. (2.01.0000 2.01.0000)

In diesem Fall würde die erste Zeile versuchen, ein Produkt derselben Version zu entfernen. (Die VersionMax-Spalte entspricht der Produktversion in der Property-Tabelle.)

Um diesen Fehler zu beheben, verwenden Sie eine Version in der VersionMax-Spalte, die niedriger als die aktuelle Version ist, die in der Property-Tabelle angegeben ist. Entfernen Sie das msidbUpgradeAttributesVersionMaxInclusive-Bit aus der Attributes-Spalte, wenn VersionMax gleich der aktuellen Version ist. Wenn die Absicht nur darin besteht, das Produkt zu erkennen und nicht zu entfernen, wird dieser Fehler auch durch Hinzufügen des MsidbUpgradeAttributesOnlyDetect-Bits zur Attributes-Spalte behoben.

Upgrade.ActionProperty EnglishAPPFOUND must be added to the SecureCustomProperties property.

Sofern die Eigenschaft nicht in der SecureCustomProperties-Eigenschaft aufgeführt ist, wird die Eigenschaft nicht an die Serverseite der Installation übergeben, wenn die Eigenschaft gefunden wird.

Um diesen Fehler zu beheben, fügen Sie die Eigenschaft zu SecureCustomProperties hinzu.

Upgrade.ActionProperty EnglishAPPFOUND must not contain lowercase letters.

Upgradeeigenschaften müssen öffentliche Eigenschaften sein, damit das Ergebnis an die Serverseite der Installation übergeben werden kann.

Um diesen Fehler zu beheben, verwenden Sie nur Großbuchstaben im Eigenschaftsnamen.

Upgrade.ActionProperty OLDAPPFOUND may be used in only one record of the Upgrade table.

Eine Eigenschaft kann nur in einer Zeile der Upgrade-Tabelle verwendet werden.

Um diesen Fehler zu beheben, verwenden Sie eine andere Eigenschaft in der zweiten Zeile.

Upgrade.VersionMax cannot be less than Upgrade.VersionMin. (OLDAPPFOUND)

Die Mindestversion muss niedriger als die Höchstversion sein.

Um diesen Fehler zu beheben, überprüfen Sie Ihre Versionsnummern auf Tippfehler. Wenn sie richtig sind und Sie den Bereich zwischen den beiden Versionen verwenden möchten, tauschen Sie sie so, dass VersionMin niedriger als VersionMax ist.

Property-Tabelle

Eigenschaft Wert
UpgradeCode {61AA4C55-E17F-11D2-93BB-0060089A76DB}
ProductVersion 2.01.0000
SecureCustomProperties OLDAPPFOUND

 

Upgrade-Tabelle

UpgradeCode VersionMin VersionMax Sprache Attribute Remove (Entfernen) ActionProperty
{61AA4C55-E17F-11D2-93BB-0060089A76DB} 2.01.0000 513 OLDAPPFOUND
{61AA4C55-E17F-11D2-93BB-0060089A76DB} 2.01.0001 2.01.0000 OLDAPPFOUND
{C6CB4596-D8E8-D5A4-635F-9FE456D682EB} 1.00.0000 2.00.0000 1033 [AppFeatureEnglish] EnglishAPPFOUND

 

ICE-Referenz