InstallerCollection クラス
アセンブリ: System.Configuration.Install (system.configuration.install.dll 内)


InstallerCollection は、Installer オブジェクトのコレクションを管理するためにアプリケーションが必要とするメソッドとプロパティを提供します。
インストーラをコレクションに追加するには、次の 3 つの方法のいずれかを使用します。
-
Insert メソッドと、InstallerCollection のインデクサである Item プロパティのいずれかを使用して、1 つのインストーラをコレクション内の指定したインデックスに追加します。
インストーラを削除するには、Remove メソッドを使用します。特定のインストーラがコレクション内にあるかどうかを確認するには、Contains メソッドを使用します。特定のインストーラについて、コレクション内の位置を確認するには、IndexOf メソッドを使用します。
コレクション内のインストーラは、Installer.Parent プロパティで指定した、そのコレクションを格納しているインストーラがそれぞれの Install、Commit、Rollback、または Uninstall の各メソッドを呼び出したときに実行されます。
インストーラ コレクションの使用例については、AssemblyInstaller クラスと TransactedInstaller クラスのトピックを参照してください。

InstallerCollection クラスの Add メソッドの例を次に示します。インストーラ ツール (Installutil.exe) の実装に類似した実装の例を次に示します。特定のアセンブリの前にオプションを指定して、アセンブリをインストールします。アセンブリに対してオプションが指定されていない場合、直前のアセンブリがリストにある場合は、直前のアセンブリのオプションが使用されます。"/u" オプションまたは "/uninstall" オプションを指定した場合、アセンブリはアンインストールされます。"/?" オプションまたは "/help" オプションが指定された場合は、ヘルプ情報がコンソールに表示されます。
Imports System Imports System.ComponentModel Imports System.Collections Imports System.Configuration.Install Imports System.IO Public Class InstallerCollection_Add 'Entry point which delegates to C-style main Private Function Public Overloads Shared Sub Main() Main(System.Environment.GetCommandLineArgs()) End Sub Overloads Public Shared Sub Main(args() As String) Dim options As New ArrayList() Dim myOption As String Dim toUnInstall As Boolean = False Dim toPrintHelp As Boolean = False Dim myTransactedInstaller As New TransactedInstaller() Dim myAssemblyInstaller As AssemblyInstaller Dim myInstallContext As InstallContext Try Dim i As Integer For i = 1 To args.Length - 1 ' Process the arguments. If args(i).StartsWith("/") Or args(i).StartsWith("-") Then myOption = args(i).Substring(1) ' Determine whether the option is to 'uninstall' a assembly. If String.Compare(myOption, "u", True) = 0 Or String.Compare(myOption, "uninstall", _ True) = 0 Then toUnInstall = True GoTo ContinueFor1 End If ' Determine whether the option is for printing help information. If String.Compare(myOption, "?", True) = 0 Or String.Compare(myOption, "help", _ True) = 0 Then toPrintHelp = True GoTo ContinueFor1 End If ' Add the option encountered to the list of all options ' encountered for the current assembly. options.Add(myOption) Else ' Determine whether the assembly file exists. If Not File.Exists(args(i)) Then ' If assembly file doesn't exist then print error. Console.WriteLine(" Error : {0} - Assembly file doesn't exist.", args(i)) Return End If ' Create an instance of 'AssemblyInstaller' that installs the given assembly. myAssemblyInstaller = New AssemblyInstaller(args(i), CType(options.ToArray _ (GetType(String)), String())) ' Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'. myTransactedInstaller.Installers.Add(myAssemblyInstaller) End If ContinueFor1: Next i ' If user requested help or didn't provide any assemblies to install ' then print help message. If toPrintHelp Or myTransactedInstaller.Installers.Count = 0 Then PrintHelpMessage() Return End If ' Create an instance of 'InstallContext' with the options specified. myInstallContext = New InstallContext("Install.log", CType(options.ToArray _ (GetType(String)), String())) myTransactedInstaller.Context = myInstallContext ' Install or Uninstall an assembly depending on the option provided. If Not toUnInstall Then myTransactedInstaller.Install(New Hashtable()) Else myTransactedInstaller.Uninstall(Nothing) End If Catch e As Exception Console.WriteLine(" Exception raised : {0}", e.Message) End Try End Sub 'Main Public Shared Sub PrintHelpMessage() Console.WriteLine("Usage : InstallerCollection_Add [/u | /uninstall] [option [...]]assembly"+ _ "[[option [...]] assembly] [...]]") Console.WriteLine("InstallerCollection_Add executes the installers in each of" + _ " the given assembly. If /u or /uninstall option is given it uninstalls the assemblies.") End Sub 'PrintHelpMessage End Class 'InstallerCollection_Add
using System; using System.ComponentModel; using System.Collections; using System.Configuration.Install; using System.IO; public class InstallerCollection_Add { public static void Main(String[] args) { ArrayList options = new ArrayList(); String myOption; bool toUnInstall = false; bool toPrintHelp = false; TransactedInstaller myTransactedInstaller = new TransactedInstaller(); AssemblyInstaller myAssemblyInstaller; InstallContext myInstallContext; try { for(int i = 0; i < args.Length; i++) { // Process the arguments. if(args[i].StartsWith("/") || args[i].StartsWith("-")) { myOption = args[i].Substring(1); // Determine whether the option is to 'uninstall' a assembly. if(String.Compare(myOption, "u", true) == 0 || String.Compare(myOption, "uninstall", true) == 0) { toUnInstall = true; continue; } // Determine whether the option is for printing help information. if(String.Compare(myOption, "?", true) == 0 || String.Compare(myOption, "help", true) == 0) { toPrintHelp = true; continue; } // Add the option encountered to the list of all options // encountered for the current assembly. options.Add(myOption); } else { // Determine whether the assembly file exists. if(!File.Exists(args[i])) { // If assembly file doesn't exist then print error. Console.WriteLine(" Error : {0} - Assembly file doesn't exist.", args[i]); return; } // Create an instance of 'AssemblyInstaller' that installs the given assembly. myAssemblyInstaller = new AssemblyInstaller(args[i] , (string[]) options.ToArray(typeof(string))); // Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'. myTransactedInstaller.Installers.Add(myAssemblyInstaller); } } // If user requested help or didn't provide any assemblies to install // then print help message. if(toPrintHelp || myTransactedInstaller.Installers.Count == 0) { PrintHelpMessage(); return; } // Create an instance of 'InstallContext' with the options specified. myInstallContext = new InstallContext("Install.log", (string[]) options.ToArray(typeof(string))); myTransactedInstaller.Context = myInstallContext; // Install or Uninstall an assembly depending on the option provided. if(!toUnInstall) myTransactedInstaller.Install(new Hashtable()); else myTransactedInstaller.Uninstall(null); } catch(Exception e) { Console.WriteLine(" Exception raised : {0}", e.Message); } } public static void PrintHelpMessage() { Console.WriteLine("Usage : InstallerCollection_Add [/u | /uninstall] [option [...]] assembly" + "[[option [...]] assembly] [...]]"); Console.WriteLine("InstallerCollection_Add executes the installers in each of" + " the given assembly. If /u or /uninstall option" + " is given it uninstalls the assemblies."); } }
#using <System.dll> #using <System.Configuration.Install.dll> using namespace System; using namespace System::ComponentModel; using namespace System::Collections; using namespace System::Configuration::Install; using namespace System::IO; void PrintHelpMessage() { Console::WriteLine( "Usage : InstallerCollection_Add [/u | /uninstall] [option [...]] assembly " + "[[option [...]] assembly] [...]]" ); Console::WriteLine( "InstallerCollection_Add executes the installers in each of" + "the given assembly. If /u or /uninstall option" + "option is given it uninstalls the assemblies." ); } int main() { array<String^>^ args = Environment::GetCommandLineArgs(); ArrayList^ options = gcnew ArrayList; String^ myOption; bool toUnInstall = false; bool toPrintHelp = false; TransactedInstaller^ myTransactedInstaller = gcnew TransactedInstaller; AssemblyInstaller^ myAssemblyInstaller; InstallContext^ myInstallContext; try { for ( int i = 0; i < args->Length; i++ ) { // Process the arguments. if ( args[ i ]->StartsWith( "/" ) || args[ i ]->StartsWith( "-" ) ) { myOption = args[ i ]->Substring( 1 ); // Determine whether the option is to 'uninstall' a assembly. if ( String::Compare( myOption, "u", true ) == 0 || String::Compare( myOption, "uninstall", true ) == 0 ) { toUnInstall = true; continue; } // Determine whether the option is for printing help information. if ( String::Compare( myOption, "?", true ) == 0 || String::Compare( myOption, "help", true ) == 0 ) { toPrintHelp = true; continue; } // Add the option encountered to the list of all options // encountered for the current assembly. options->Add( myOption ); } else { // Determine whether the assembly file exists. if ( !File::Exists( args[ i ] ) ) { // If assembly file doesn't exist then print error. Console::WriteLine( " Error : {0} - Assembly file doesn't exist.", args[ i ] ); return 0; } // Create an instance of 'AssemblyInstaller' that installs the given assembly. myAssemblyInstaller = gcnew AssemblyInstaller( args[ i ], (array<String^>^)(options->ToArray( String::typeid )) ); // Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'. myTransactedInstaller->Installers->Add( myAssemblyInstaller ); } } // then print help message. if ( toPrintHelp || myTransactedInstaller->Installers->Count == 0 ) { PrintHelpMessage(); return 0; } // Create an instance of 'InstallContext' with the options specified. myInstallContext = gcnew InstallContext( "Install.log", (array<String^>^)(options->ToArray( String::typeid )) ); myTransactedInstaller->Context = myInstallContext; // Install or Uninstall an assembly depending on the option provided. if ( !toUnInstall ) myTransactedInstaller->Install( gcnew Hashtable ); else myTransactedInstaller->Uninstall( nullptr ); } catch ( Exception^ e ) { Console::WriteLine( " Exception raised : {0}", e->Message ); } }
import System.*; import System.ComponentModel.*; import System.Collections.*; import System.Configuration.Install.*; import System.IO.*; public class InstallerCollectionAdd { public static void main(String[] args) { ArrayList options = new ArrayList(); String myOption; boolean toUnInstall = false; boolean toPrintHelp = false; TransactedInstaller myTransactedInstaller = new TransactedInstaller(); AssemblyInstaller myAssemblyInstaller; InstallContext myInstallContext; try { for (int i = 0; i < args.length; i++) { // Process the arguments. if (args[i].StartsWith("/") || args[i].StartsWith("-")) { myOption = args[i].Substring(1); // Determine whether the option is to //'uninstall' a assembly. if (String.Compare(myOption, "u", true) == 0 || String.Compare(myOption, "uninstall", true) == 0) { toUnInstall = true; continue; } // Determine whether the option is //for printing help information. if (String.Compare(myOption, "?", true) == 0 || String.Compare(myOption, "help", true) == 0) { toPrintHelp = true; continue; } // Add the option encountered to the list of all options // encountered for the current assembly. options.Add(myOption); } else { // Determine whether the assembly file exists. if (!(File.Exists(args[i]))) { // If assembly file doesn't exist then print error. Console.WriteLine(" Error : {0} - Assembly " +"file doesn't exist.", args[i]); return; } // Create an instance of 'AssemblyInstaller' //that installs the given assembly. myAssemblyInstaller = new AssemblyInstaller(args[i] , (String[])(options.ToArray(String.class.ToType()))); // Add the instance of 'AssemblyInstaller' //to the 'TransactedInstaller'. myTransactedInstaller.get_Installers(). Add(myAssemblyInstaller); } } // If user requested help or didn't provide any assemblies to //install then print help message. if (toPrintHelp || myTransactedInstaller.get_Installers().get_Count() == 0) { PrintHelpMessage(); return; } // Create an instance of 'InstallContext' //with the options specified. myInstallContext = new InstallContext("Install.log" , (String[])(options.ToArray(String.class.ToType()))); myTransactedInstaller.set_Context(myInstallContext); // Install or Uninstall an assembly depending //on the option provided. if (!(toUnInstall)) { myTransactedInstaller.Install(new Hashtable()); } else { myTransactedInstaller.Uninstall(null); } } catch (System.Exception e) { Console.WriteLine(" Exception raised : {0}", e.get_Message()); } } //main public static void PrintHelpMessage() { Console.WriteLine("Usage : InstallerCollectionAdd [/u | /uninstall]" + " [option [...]] assembly" + "[[option [...]] assembly] [...]]"); Console.WriteLine("InstallerCollectionAdd executes the installers in" +" each of" + " the given assembly. If /u or /uninstall option" + " is given it uninstalls the assemblies."); } //PrintHelpMessage } //InstallerCollectionAdd

System.Collections.CollectionBase
System.Configuration.Install.InstallerCollection


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


InstallerCollection プロパティ

名前 | 説明 | |
---|---|---|
![]() | Capacity | CollectionBase に格納できる要素の数を取得または設定します。 ( CollectionBase から継承されます。) |
![]() | Count | CollectionBase インスタンスに格納されている要素の数を取得します。このプロパティはオーバーライドできません。 ( CollectionBase から継承されます。) |
![]() | Item | 指定したインデックスにあるインストーラを取得または設定します。 |

名前 | 説明 | |
---|---|---|
![]() | InnerList | CollectionBase インスタンス内の要素のリストを格納する ArrayList を取得します。 ( CollectionBase から継承されます。) |
![]() | List | CollectionBase インスタンス内の要素のリストを格納する IList を取得します。 ( CollectionBase から継承されます。) |

InstallerCollection メソッド

名前 | 説明 | |
---|---|---|
![]() | Add | 指定したインストーラをインストーラ コレクションに追加します。 |
![]() | AddRange | オーバーロードされます。 指定したインストーラをコレクションに追加します。 |
![]() | Clear | CollectionBase インスタンスからすべてのオブジェクトを削除します。このメソッドはオーバーライドできません。 ( CollectionBase から継承されます。) |
![]() | Contains | 指定したインストーラがコレクション内にあるかどうかを確認します。 |
![]() | CopyTo | 指定したインデックスを開始位置として、コレクションの項目を配列にコピーします。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
![]() | GetEnumerator | CollectionBase インスタンスを反復処理する列挙子を返します。 ( CollectionBase から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
![]() | IndexOf | コレクション内の指定したインストーラのインデックスを確認します。 |
![]() | Insert | コレクション内の指定したインデックスに、指定したインストーラを挿入します。 |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
![]() | Remove | 指定した Installer をコレクションから削除します。 |
![]() | RemoveAt | CollectionBase インスタンスの指定したインデックスにある要素を削除します。このメソッドはオーバーライドできません。 ( CollectionBase から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |
![]() | OnClear | CollectionBase インスタンスの内容を消去するときに、追加のカスタム プロセスを実行します。 ( CollectionBase から継承されます。) |
![]() | OnClearComplete | CollectionBase インスタンスの内容を消去した後に、追加のカスタム プロセスを実行します。 ( CollectionBase から継承されます。) |
![]() | OnInsert | オーバーライドされます。 コレクションに新しいインストーラが挿入される前に、追加のカスタム プロセスを実行します。 |
![]() | OnInsertComplete | CollectionBase インスタンスに新しい要素を挿入した後に、追加のカスタム プロセスを実行します。 ( CollectionBase から継承されます。) |
![]() | OnRemove | オーバーライドされます。 コレクションからインストーラを削除する前に、追加のカスタム プロセスを実行します。 |
![]() | OnRemoveComplete | CollectionBase インスタンスから要素を削除した後に、追加のカスタム プロセスを実行します。 ( CollectionBase から継承されます。) |
![]() | OnSet | オーバーライドされます。 既存のインストーラを新しい値に設定する前に、追加のカスタム プロセスを実行します。 |
![]() | OnSetComplete | CollectionBase インスタンスに値を設定した後に、追加のカスタム プロセスを実行します。 ( CollectionBase から継承されます。) |
![]() | OnValidate | 値を検証するときに、追加のカスタム プロセスを実行します。 ( CollectionBase から継承されます。) |

InstallerCollection メンバ
インストール中に実行されるインストーラのコレクションを格納します。
InstallerCollection データ型で公開されるメンバを以下の表に示します。

名前 | 説明 | |
---|---|---|
![]() | Capacity | CollectionBase に格納できる要素の数を取得または設定します。(CollectionBase から継承されます。) |
![]() | Count | CollectionBase インスタンスに格納されている要素の数を取得します。このプロパティはオーバーライドできません。(CollectionBase から継承されます。) |
![]() | Item | 指定したインデックスにあるインストーラを取得または設定します。 |

名前 | 説明 | |
---|---|---|
![]() | InnerList | CollectionBase インスタンス内の要素のリストを格納する ArrayList を取得します。(CollectionBase から継承されます。) |
![]() | List | CollectionBase インスタンス内の要素のリストを格納する IList を取得します。(CollectionBase から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Add | 指定したインストーラをインストーラ コレクションに追加します。 |
![]() | AddRange | オーバーロードされます。 指定したインストーラをコレクションに追加します。 |
![]() | Clear | CollectionBase インスタンスからすべてのオブジェクトを削除します。このメソッドはオーバーライドできません。 (CollectionBase から継承されます。) |
![]() | Contains | 指定したインストーラがコレクション内にあるかどうかを確認します。 |
![]() | CopyTo | 指定したインデックスを開始位置として、コレクションの項目を配列にコピーします。 |
![]() | Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
![]() | GetEnumerator | CollectionBase インスタンスを反復処理する列挙子を返します。 (CollectionBase から継承されます。) |
![]() | GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
![]() | GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
![]() | IndexOf | コレクション内の指定したインストーラのインデックスを確認します。 |
![]() | Insert | コレクション内の指定したインデックスに、指定したインストーラを挿入します。 |
![]() | ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
![]() | Remove | 指定した Installer をコレクションから削除します。 |
![]() | RemoveAt | CollectionBase インスタンスの指定したインデックスにある要素を削除します。このメソッドはオーバーライドできません。 (CollectionBase から継承されます。) |
![]() | ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |

名前 | 説明 | |
---|---|---|
![]() | Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
![]() | MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |
![]() | OnClear | CollectionBase インスタンスの内容を消去するときに、追加のカスタム プロセスを実行します。 (CollectionBase から継承されます。) |
![]() | OnClearComplete | CollectionBase インスタンスの内容を消去した後に、追加のカスタム プロセスを実行します。 (CollectionBase から継承されます。) |
![]() | OnInsert | オーバーライドされます。 コレクションに新しいインストーラが挿入される前に、追加のカスタム プロセスを実行します。 |
![]() | OnInsertComplete | CollectionBase インスタンスに新しい要素を挿入した後に、追加のカスタム プロセスを実行します。 (CollectionBase から継承されます。) |
![]() | OnRemove | オーバーライドされます。 コレクションからインストーラを削除する前に、追加のカスタム プロセスを実行します。 |
![]() | OnRemoveComplete | CollectionBase インスタンスから要素を削除した後に、追加のカスタム プロセスを実行します。 (CollectionBase から継承されます。) |
![]() | OnSet | オーバーライドされます。 既存のインストーラを新しい値に設定する前に、追加のカスタム プロセスを実行します。 |
![]() | OnSetComplete | CollectionBase インスタンスに値を設定した後に、追加のカスタム プロセスを実行します。 (CollectionBase から継承されます。) |
![]() | OnValidate | 値を検証するときに、追加のカスタム プロセスを実行します。 (CollectionBase から継承されます。) |

Weblioに収録されているすべての辞書からInstallerCollectionを検索する場合は、下記のリンクをクリックしてください。

- InstallerCollectionのページへのリンク