แก้ไข

แชร์ผ่าน


InstallerCollection.Item[Int32] Property

Definition

Gets or sets an installer at the specified index.

public:
 property System::Configuration::Install::Installer ^ default[int] { System::Configuration::Install::Installer ^ get(int index); void set(int index, System::Configuration::Install::Installer ^ value); };
public System.Configuration.Install.Installer this[int index] { get; set; }
member this.Item(int) : System.Configuration.Install.Installer with get, set
Default Public Property Item(index As Integer) As Installer

Parameters

index
Int32

The zero-based index of the installer to get or set.

Property Value

An Installer that represents the installer at the specified index.

Examples

The following example creates AssemblyInstaller instances for MyAssembly1.exe and MyAssembly2.exe. These instances are added to a TransactedInstaller. The names of all the assemblies that are to be installed are displayed to the console. The installation process installs both MyAssembly1.exe and MyAssembly2.exe.

TransactedInstaller^ myTransactedInstaller = gcnew TransactedInstaller;
AssemblyInstaller^ myAssemblyInstaller;
InstallContext^ myInstallContext;

// Create a instance of 'AssemblyInstaller' that installs 'MyAssembly1.exe'.
myAssemblyInstaller = gcnew AssemblyInstaller( "MyAssembly1.exe",nullptr );

// Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'.
myTransactedInstaller->Installers->Add( myAssemblyInstaller );

// Create a instance of 'AssemblyInstaller' that installs 'MyAssembly2.exe'.
myAssemblyInstaller = gcnew AssemblyInstaller( "MyAssembly2.exe",nullptr );

// Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'.
myTransactedInstaller->Installers->Add( myAssemblyInstaller );

//Print the assemblies to be installed.
InstallerCollection^ myInstallers = myTransactedInstaller->Installers;
Console::WriteLine( "\nPrinting all assemblies to be installed" );
for ( int i = 0; i < myInstallers->Count; i++ )
{
   if ( dynamic_cast<AssemblyInstaller^>(myInstallers[ i ]) )
   {
      Console::WriteLine( "{0} {1}", i + 1, safe_cast<AssemblyInstaller^>(myInstallers[ i ])->Path );
   }
}
TransactedInstaller myTransactedInstaller = new TransactedInstaller();
AssemblyInstaller myAssemblyInstaller;
InstallContext myInstallContext;

// Create a instance of 'AssemblyInstaller' that installs 'MyAssembly1.exe'.
myAssemblyInstaller =
   new AssemblyInstaller("MyAssembly1.exe", null);

// Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'.
myTransactedInstaller.Installers.Add(myAssemblyInstaller);

// Create a instance of 'AssemblyInstaller' that installs 'MyAssembly2.exe'.
myAssemblyInstaller =
   new AssemblyInstaller("MyAssembly2.exe", null);

// Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'.
myTransactedInstaller.Installers.Add(myAssemblyInstaller);

//Print the assemblies to be installed.
InstallerCollection myInstallers = myTransactedInstaller.Installers;
Console.WriteLine("\nPrinting all assemblies to be installed");
for(int i = 0; i < myInstallers.Count; i++)
{
   if((myInstallers[i].GetType()).Equals(typeof(AssemblyInstaller)))
   {
      Console.WriteLine("{0} {1}", i + 1,
         ((AssemblyInstaller)myInstallers[i]).Path);
   }
}
Dim myTransactedInstaller As New TransactedInstaller()
Dim myAssemblyInstaller As AssemblyInstaller
Dim myInstallContext As InstallContext

' Create a instance of 'AssemblyInstaller' that installs 'MyAssembly1.exe'.
myAssemblyInstaller = New AssemblyInstaller("MyAssembly1.exe", Nothing)

' Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'.
myTransactedInstaller.Installers.Add(myAssemblyInstaller)

' Create a instance of 'AssemblyInstaller' that installs 'MyAssembly2.exe'.
myAssemblyInstaller = New AssemblyInstaller("MyAssembly2.exe", Nothing)

' Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'.  
myTransactedInstaller.Installers.Add(myAssemblyInstaller)

'Print the assemblies to be installed.
Dim myInstallers As InstallerCollection = myTransactedInstaller.Installers
Console.WriteLine(ControlChars.Newline + "Printing all assemblies to be installed")
Dim i As Integer
For i = 0 To myInstallers.Count - 1
   If myInstallers(i).GetType().Equals(GetType(AssemblyInstaller)) Then
      Console.WriteLine("{0} {1}", i + 1, CType(myInstallers(i), AssemblyInstaller).Path)
   End If
Next i

Remarks

When the specified Installer is placed in the InstallerCollection, the Parent property of the Installer is set to the Installer that contains the collection.

Applies to

See also