InstanceDataCollectionCollection.Contains メソッド
アセンブリ: System (system.dll 内)

Dim instance As InstanceDataCollectionCollection Dim counterName As String Dim returnValue As Boolean returnValue = instance.Contains(counterName)
- counterName
パフォーマンス カウンタの名前。
指定したカウンタを格納しているインスタンス データ コレクションがコレクション内に存在している場合は true。それ以外の場合は false。


counterName パラメータでは、大文字と小文字が区別されません。
コレクション内の各 InstanceDataCollection オブジェクトは、インスタンスのすべてのカウンタのパフォーマンス データを格納します。このデータには、まずカウンタ名ごと、次にインスタンス名ごとにインデックスが付けられます。Contains は、関連付けられているカウンタの名前が counterName パラメータに指定された名前である InstanceDataCollection オブジェクトがある場合は、true を返します。

コマンド ラインから PerformanceCounter カテゴリ名およびカウンタ名を受け取るコード例を次に示します。PerformanceCounterCategory の InstanceDataCollectionCollection を取得し、指定したカウンタが存在するかどうかを Contains メソッドを使って確認します。カウンタが存在する場合は、関連付けられた InstanceDataCollection が取得され、コレクションからインスタンス名が表示されます。
Sub Main(ByVal args() As String) Dim categoryName As String = "" Dim counterName As String = "" Dim idColCol As InstanceDataCollectionCollection ' Copy the supplied arguments into the local variables. Try categoryName = args(0) counterName = args(1) Catch ex As Exception ' Ignore the exception from non-supplied arguments. End Try Try ' Get the InstanceDataCollectionCollection for this category. Dim pcc As New PerformanceCounterCategory(categoryName) idColCol = pcc.ReadCategory() Catch ex As Exception Console.WriteLine( _ "An error occurred getting the InstanceDataCollection for " & _ "category ""{0}""." & vbCrLf & ex.Message, categoryName) Return End Try ' Check if this counter name exists using the Contains ' method of the InstanceDataCollectionCollection. If Not idColCol.Contains(counterName) Then Console.WriteLine( _ "Counter ""{0}"" does not exist in category ""{1}"".", _ counterName, categoryName) Return Else ' Now get the counter's InstanceDataCollection object using the ' indexer (Item property) for the InstanceDataCollectionCollection. Dim countData As InstanceDataCollection = idColCol(counterName) Dim idColKeys As ICollection = countData.Keys Dim idColKeysArray(idColKeys.Count - 1) As String idColKeys.CopyTo(idColKeysArray, 0) Console.WriteLine("Counter ""{0}"" of category ""{1}"" " & _ "has {2} instances.", counterName, categoryName, idColKeys.Count) ' Display the instance names for this counter. Dim index As Integer For index = 0 To idColKeysArray.Length - 1 Console.WriteLine("{0,4} -- {1}", index + 1, idColKeysArray(index)) Next index End If End Sub

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


- InstanceDataCollectionCollection.Contains メソッドのページへのリンク