InstallerCollection.CopyTo(Installer[], Int32) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Kopiert die Elemente aus der Auflistung in ein Array, beginnend am angegebenen Index.
public:
void CopyTo(cli::array <System::Configuration::Install::Installer ^> ^ array, int index);
public void CopyTo(System.Configuration.Install.Installer[] array, int index);
member this.CopyTo : System.Configuration.Install.Installer[] * int -> unit
Public Sub CopyTo (array As Installer(), index As Integer)
Parameter
- array
- Installer[]
Das Array, in das kopiert werden soll.
- index
- Int32
Der Index des Arrays, in das die Auflistung eingefügt werden soll.
Beispiele
Im folgenden Beispiel wird die CopyTo Methode der InstallerCollection Klasse veranschaulicht. Es erstellt AssemblyInstaller Instanzen für MyAssembly1.exe und MyAssembly2.exe. Diese Instanzen werden zu einem TransactedInstaller. Die Namen der zu installierenden Assemblys werden auf der Konsole angezeigt. Der Installationsprozess installiert sowohl als MyAssembly1.exeauch MyAssembly2.exe .
TransactedInstaller^ myTransactedInstaller = gcnew TransactedInstaller;
AssemblyInstaller^ myAssemblyInstaller;
InstallContext^ myInstallContext;
// Create an 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 an 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 );
array<Installer^>^ myInstallers =
gcnew array<Installer^>(myTransactedInstaller->Installers->Count);
myTransactedInstaller->Installers->CopyTo( myInstallers, 0 );
// Print the assemblies to be installed.
Console::WriteLine( "Printing all assemblies to be installed -" );
for ( int i = 0; i < myInstallers->Length; i++ )
{
if ( dynamic_cast<AssemblyInstaller^>( myInstallers[ i ] ) )
{
Console::WriteLine( "{0} {1}", i + 1, ( (AssemblyInstaller^)( myInstallers[ i ]) )->Path );
}
}
TransactedInstaller myTransactedInstaller = new TransactedInstaller();
AssemblyInstaller myAssemblyInstaller;
InstallContext myInstallContext;
// Create an 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 an 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);
Installer[] myInstallers =
new Installer[myTransactedInstaller.Installers.Count];
myTransactedInstaller.Installers.CopyTo(myInstallers, 0);
// Print the assemblies to be installed.
Console.WriteLine("Printing all assemblies to be installed -");
for(int i = 0; i < myInstallers.Length; 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 an 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 an 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)
Dim myInstallers(myTransactedInstaller.Installers.Count-1) As Installer
myTransactedInstaller.Installers.CopyTo(myInstallers, 0)
' Print the assemblies to be installed.
Console.WriteLine("Printing all assemblies to be installed -")
Dim i As Integer
For i = 0 To myInstallers.Length - 1
If myInstallers(i).GetType().Equals(GetType(AssemblyInstaller)) Then
Console.WriteLine("{0} {1}", i + 1, CType(myInstallers(i), AssemblyInstaller).Path)
End If
Next i