InstallException Třída

Definice

Výjimka, která je vyvolán, když dojde k chybě během fáze potvrzení, vrácení zpět nebo odinstalace instalace.

[System.Serializable]
public class InstallException : SystemException
Dědičnost
InstallException
Atributy

Příklady

Následující příklad a příklady v InstallException konstruktorech společně tvoří příklad znázorňující sestavení s vlastním instalačním programem. Instalační program má název MyInstaller, který má atribut RunInstallerAttribute, který označuje, že tento instalační program bude vyvolán Installutil.exe (instalační nástroj). Installutil.exe (instalační nástroj) volá metody Commit, RollbackInstall a Uninstall. Kód v Commit předpokládá, že soubor s názvem FileDoesNotExist.txt existuje před instalací sestavení lze potvrdit. Pokud soubor FileDoesNotExist.txt neexistuje, Commit vyvolá .InstallException Totéž platí i v případě Uninstall , kdy dojde k odinstalaci pouze v případě, že existuje soubor s názvem FileDoesNotExist.txt . V opačném případě vyvolá .InstallException V Rollbacknástroji se spustí fragment kódu, který může vyvolat výjimku. Pokud je výjimka vyvolána, je zachycena a InstallException vyvolá se s tím, že se této výjimce předá.

Poznámka

Spusťte tento příklad pomocí Installutil.exe. Na příkazovém řádku zadejte tento příkaz:

Installutil InstallException.exe

-nebo-

Installutil /u InstallException.exe

using System;
using System.ComponentModel;
using System.Collections;
using System.Configuration.Install;
using System.IO;

[RunInstaller(true)]
public class MyInstaller : Installer
{
   public override void Install(IDictionary savedState)
   {
      base.Install(savedState);
      Console.WriteLine("Install ...");

      // Commit is called when install goes through successfully.
      // Rollback is called if there is any error during Install.

      // Uncommenting the code below will lead to 'RollBack' being called,
      // currently 'Commit' shall be called.

      // throw new IOException();
   }

   public override void Commit(IDictionary savedState)
   {
      base.Commit(savedState);
      Console.WriteLine("Commit ...");
      // Throw an error if a particular file doesn't exist.
      if(!File.Exists("FileDoesNotExist.txt"))
         throw new InstallException();
      // Perform the final installation if the file exists.
   }

   public override void Rollback(IDictionary savedState)
   {
      base.Rollback(savedState);
      Console.WriteLine("RollBack ...");
      try
      {
         // Performing some activity during rollback that raises an 'IOException'.
         throw new IOException();
      }
      catch(Exception e)
      {
         throw new InstallException("IOException raised", e);
      }
      // Perform the remaining rollback activites if no exception raised.
   }

   public override void Uninstall(IDictionary savedState)
   {
      base.Uninstall(savedState);
      Console.WriteLine("UnInstall ...");
      // Throw an error if a particular file doesn't exist.
      if(!File.Exists("FileDoesNotExist.txt"))
         throw new InstallException("The file 'FileDoesNotExist'" +
            " does not exist");
      // Perform the uninstall activites if the file exists.
   }
}

// An Assembly that has its own installer.
public class MyAssembly1
{
   public static void Main()
   {
      Console.WriteLine("This assembly is just an example for the Installer");
   }
}

Konstruktory

InstallException()

Inicializuje novou instanci InstallException třídy .

InstallException(SerializationInfo, StreamingContext)

Inicializuje novou instanci třídy InstallException se serializovanými daty.

InstallException(String)

Inicializuje novou instanci InstallException třídy a určuje zprávu, která se má uživateli zobrazit.

InstallException(String, Exception)

Inicializuje novou instanci InstallException třídy a určuje zprávu, která se má uživateli zobrazit, a odkaz na vnitřní výjimku, která je příčinou této výjimky.

Vlastnosti

Data

Získá kolekci párů klíč/hodnota, které poskytují další uživatelem definované informace o výjimce.

(Zděděno od Exception)
HelpLink

Získá nebo nastaví odkaz na soubor nápovědy přidružený k této výjimce.

(Zděděno od Exception)
HResult

Získá nebo nastaví HRESULT, kódovaná číselná hodnota, která je přiřazena ke konkrétní výjimce.

(Zděděno od Exception)
InnerException

Exception Získá instanci, která způsobila aktuální výjimku.

(Zděděno od Exception)
Message

Získá zprávu, která popisuje aktuální výjimku.

(Zděděno od Exception)
Source

Získá nebo nastaví název aplikace nebo objektu, který způsobuje chybu.

(Zděděno od Exception)
StackTrace

Získá řetězcovou reprezentaci okamžitých rámců v zásobníku volání.

(Zděděno od Exception)
TargetSite

Získá metodu, která vyvolá aktuální výjimku.

(Zděděno od Exception)

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetBaseException()

Při přepsání v odvozené třídě vrátí hodnotu Exception , která je původní příčinou jedné nebo více následných výjimek.

(Zděděno od Exception)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetObjectData(SerializationInfo, StreamingContext)
Zastaralé.

Při přepsání v odvozené třídě nastaví s SerializationInfo informacemi o výjimce.

(Zděděno od Exception)
GetType()

Získá typ modulu runtime aktuální instance.

(Zděděno od Exception)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vytvoří a vrátí řetězcovou reprezentaci aktuální výjimky.

(Zděděno od Exception)

Událost

SerializeObjectState
Zastaralé.

Nastane, když je výjimka serializována k vytvoření objektu stavu výjimky, který obsahuje serializovaná data o výjimce.

(Zděděno od Exception)

Platí pro

Produkt Verze
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

Viz také