次の方法で共有


PerformanceCounter コンストラクター

定義

PerformanceCounter クラスの新しいインスタンスを初期化します。

オーバーロード

名前 説明
PerformanceCounter()

インスタンスをシステムまたはカスタム パフォーマンス カウンターに関連付けずに、 PerformanceCounter クラスの新しい読み取り専用インスタンスを初期化します。

PerformanceCounter(String, String)

PerformanceCounter クラスの新しい読み取り専用インスタンスを初期化し、ローカル コンピューター上の指定されたシステム またはカスタム パフォーマンス カウンターに関連付けます。 このコンストラクターでは、カテゴリに 1 つのインスタンスが必要です。

PerformanceCounter(String, String, Boolean)

PerformanceCounter クラスの新しい読み取り専用または読み取り/書き込みインスタンスを初期化し、ローカル コンピューター上の指定されたシステムまたはカスタム パフォーマンス カウンターに関連付けます。 このコンストラクターでは、カテゴリに 1 つのインスタンスが含まれている必要があります。

PerformanceCounter(String, String, String)

PerformanceCounter クラスの新しい読み取り専用インスタンスを初期化し、ローカル コンピューター上の指定されたシステム またはカスタム パフォーマンス カウンターおよびカテゴリ インスタンスに関連付けます。

PerformanceCounter(String, String, String, Boolean)

PerformanceCounter クラスの新しい読み取り専用または読み取り/書き込みインスタンスを初期化し、ローカル コンピューター上の指定されたシステムまたはカスタム パフォーマンス カウンターとカテゴリ インスタンスに関連付けます。

PerformanceCounter(String, String, String, String)

PerformanceCounter クラスの新しい読み取り専用インスタンスを初期化し、指定したコンピューター上の指定したシステムまたはカスタム パフォーマンス カウンターおよびカテゴリ インスタンスに関連付けます。

PerformanceCounter()

ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs

インスタンスをシステムまたはカスタム パフォーマンス カウンターに関連付けずに、 PerformanceCounter クラスの新しい読み取り専用インスタンスを初期化します。

public:
 PerformanceCounter();
public PerformanceCounter();
Public Sub New ()

次のコード例では、 PerformanceCounter クラスの既定のインスタンスを作成します。 インスタンスが作成されると、 CategoryNameCounterName、および InstanceName プロパティの値が設定され、 NextValue メソッドの呼び出しの結果が表示されます。

PerformanceCounter performanceCounter = new PerformanceCounter();
performanceCounter.CategoryName = "Process";
performanceCounter.CounterName = "Private Bytes";
performanceCounter.InstanceName = "Explorer";
MessageBox.Show(performanceCounter.NextValue().ToString());
Dim PC As New PerformanceCounter()
PC.CategoryName = "Process"
PC.CounterName = "Private Bytes"
PC.InstanceName = "Explorer"
MessageBox.Show(PC.NextValue().ToString())

注釈

このコンストラクターのオーバーロードは、 CategoryNameCounterName、および InstanceName プロパティを空の文字列 ("") に設定し、 MachineName プロパティをローカル コンピューター (".") に設定します。

このコンストラクターはパフォーマンス カウンターを初期化しないため、インスタンスはローカル コンピューター上の既存のカウンターに関連付けされません。 特定のパフォーマンス カウンターをポイントするには、 CategoryNameCounterName、および必要に応じて、他のプロパティを読み取る前に、またはカウンターから読み取ろうとする前に、 InstanceName プロパティと MachineName プロパティを設定します。 パフォーマンス カウンターに書き込むには、 ReadOnly プロパティを false に設定します。

このメンバーに適用される HostProtectionAttribute 属性には、次の Resources プロパティ値があります: Synchronization | SharedStateHostProtectionAttributeはデスクトップ アプリケーションには影響しません (通常、アイコンをダブルクリックするか、コマンドを入力するか、ブラウザーで URL を入力します)。 詳細については、 HostProtectionAttribute クラスまたは SQL Server プログラミング属性とホスト保護属性に関するページを参照してください。

適用対象

PerformanceCounter(String, String)

ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs

PerformanceCounter クラスの新しい読み取り専用インスタンスを初期化し、ローカル コンピューター上の指定されたシステム またはカスタム パフォーマンス カウンターに関連付けます。 このコンストラクターでは、カテゴリに 1 つのインスタンスが必要です。

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName);
public PerformanceCounter(string categoryName, string counterName);
new System.Diagnostics.PerformanceCounter : string * string -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String)

パラメーター

categoryName
String

このパフォーマンス カウンターが関連付けられているパフォーマンス カウンター カテゴリ (パフォーマンス オブジェクト) の名前。

counterName
String

パフォーマンス カウンターの名前。

例外

categoryName は空の文字列 ("") です。

-又は-

counterName は空の文字列 ("") です。

-又は-

指定されたカテゴリが存在しません。

-又は-

指定されたカテゴリはマルチインスタンスとしてマークされ、インスタンス名を使用してパフォーマンス カウンターを作成する必要があります。

-又は-

categoryName counterNameはさまざまな言語にローカライズされています。

categoryName または counterNamenull

システム API にアクセスするときにエラーが発生しました。

管理特権なしで実行されているコードが、パフォーマンス カウンターを読み取ろうとしました。

注釈

パラメーター文字列では、大文字と小文字は区別されません。

このオーバーロードを使用して、1 つのパフォーマンス カウンター カテゴリ インスタンスを含むカテゴリに属するローカル コンピューター上のカウンターにアクセスします。 このコンストラクターを使用して、この PerformanceCounter インスタンスを複数のインスタンスを含むカテゴリを指そうとすると、コンストラクターは例外をスローします。 このオーバーロードは、読み取り専用または読み取り/書き込みカウンターにアクセスできますが、読み取り専用モードでアクセスできます。 このオーバーロードを使用して作成された PerformanceCounter インスタンスは、カウンター自体が読み取り/書き込みであっても、カウンターに書き込むことができません。

コンストラクターのこのオーバーロードでは、 CategoryName プロパティと CounterName プロパティを渡す値に設定し、 MachineName プロパティをローカル コンピューター "."に設定し、 InstanceName プロパティを空の文字列 ("") に設定します。

このコンストラクターは、パフォーマンス カウンターを初期化し、インスタンスをローカル コンピューター上の既存のカウンター (システムまたはカスタム カウンター) に関連付けます。 CategoryNameプロパティとCounterNameプロパティに渡す値は、ローカル コンピューター上の既存のパフォーマンス カウンターを指している必要があります。

Windows Vista 以降、Windows XP Professional x64 Edition、または Windows Server 2003 の非対話型ログオン セッションからパフォーマンス カウンターを読み取る場合は、パフォーマンス モニター ユーザー グループのメンバーであるか、管理者特権を持っている必要があります。

Windows Vista のパフォーマンス カウンターにアクセスするために特権を昇格する必要を回避するには、パフォーマンス モニター ユーザー グループに自分を追加します。

Windows Vista では、ユーザー アカウント制御 (UAC) によってユーザーの権限が決定されます。 組み込みの Administrators グループのメンバーである場合は、標準ユーザー アクセス トークンと管理者アクセス トークンという 2 つのランタイム アクセス トークンが割り当てられます。 既定では、標準のユーザー ロールになります。 パフォーマンス カウンターにアクセスするコードを実行するには、まず特権を標準ユーザーから管理者に昇格させる必要があります。 これを行うには、アプリケーション アイコンを右クリックし、管理者として実行することを示すことで、アプリケーションを起動します。

適用対象

PerformanceCounter(String, String, Boolean)

ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs

PerformanceCounter クラスの新しい読み取り専用または読み取り/書き込みインスタンスを初期化し、ローカル コンピューター上の指定されたシステムまたはカスタム パフォーマンス カウンターに関連付けます。 このコンストラクターでは、カテゴリに 1 つのインスタンスが含まれている必要があります。

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName, bool readOnly);
public PerformanceCounter(string categoryName, string counterName, bool readOnly);
new System.Diagnostics.PerformanceCounter : string * string * bool -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String, readOnly As Boolean)

パラメーター

categoryName
String

このパフォーマンス カウンターが関連付けられているパフォーマンス カウンター カテゴリ (パフォーマンス オブジェクト) の名前。

counterName
String

パフォーマンス カウンターの名前。

readOnly
Boolean

true 読み取り専用モードでカウンターにアクセスする場合 (ただし、カウンター自体は読み取り/書き込み可能)。読み取り/書き込みモードでカウンターにアクセスする false

例外

categoryNameは空の文字列 ("") です。

-又は-

counterNameは空の文字列 ("") です。

-又は-

指定されたカテゴリが存在しません。 ( readOnlytrueの場合)。

-又は-

指定されたカテゴリが .NET Framework カスタム カテゴリではありません ( readOnlyfalseされている場合)。

-又は-

指定されたカテゴリはマルチインスタンスとしてマークされ、インスタンス名を使用してパフォーマンス カウンターを作成する必要があります。

-又は-

categoryName counterNameはさまざまな言語にローカライズされています。

categoryName または counterNamenull

システム API にアクセスするときにエラーが発生しました。

管理特権なしで実行されているコードが、パフォーマンス カウンターを読み取ろうとしました。

次のコード例では、 PerformanceCounter クラスのインスタンスを作成します。 この例では、カテゴリ名、カウンター名、およびカウンターが読み取り専用でないことを示すフラグ値を渡します。 このコード例は、 PerformanceCounter クラスの大きな例の一部です。

avgCounter64Sample = new PerformanceCounter("AverageCounter64SampleCategory",
    "AverageCounter64Sample",
    false);
avgCounter64Sample = New PerformanceCounter("AverageCounter64SampleCategory", "AverageCounter64Sample", False)

注釈

パラメーター文字列では、大文字と小文字は区別されません。

このオーバーロードを使用して、単一のパフォーマンス カウンター カテゴリ インスタンスを含むカテゴリに属するローカル コンピューター上の読み取り専用または読み取り/書き込みカウンターにアクセスします。 このコンストラクターを使用して、この PerformanceCounter インスタンスを複数のインスタンスを含むカテゴリを指そうとすると、コンストラクターは例外をスローします。

コンストラクターのこのオーバーロードでは、 CategoryNameCounterName、および ReadOnly プロパティを渡す値に設定し、 MachineName プロパティをローカル コンピューター "."に設定し、 InstanceName プロパティを空の文字列 ("") に設定します。

このコンストラクターは、パフォーマンス カウンターを初期化し、インスタンスをローカル コンピューター上の既存のカウンター (システムまたはカスタム カウンター) に関連付けます。 CategoryNameプロパティとCounterNameプロパティに渡す値は、ローカル コンピューター上の既存のパフォーマンス カウンターを指している必要があります。 指定したパフォーマンス カウンター インスタンスが無効な場合、コンストラクターを呼び出すと例外がスローされます。

このオーバーロードを使用してシステム カウンターに接続できますが、システム カウンターに書き込むことはできません。 したがって、システム カウンターに接続するときに readOnlyfalse に設定すると、コンストラクターは例外をスローします。

Windows Vista 以降、Windows XP Professional x64 Edition、または Windows Server 2003 の非対話型ログオン セッションからパフォーマンス カウンターを読み取る場合は、パフォーマンス モニター ユーザー グループのメンバーであるか、管理者特権を持っている必要があります。

Windows Vista のパフォーマンス カウンターにアクセスするために特権を昇格する必要を回避するには、パフォーマンス モニター ユーザー グループに自分を追加します。

Windows Vista では、ユーザー アカウント制御 (UAC) によってユーザーの権限が決定されます。 組み込みの Administrators グループのメンバーである場合は、標準ユーザー アクセス トークンと管理者アクセス トークンという 2 つのランタイム アクセス トークンが割り当てられます。 既定では、標準のユーザー ロールになります。 パフォーマンス カウンターにアクセスするコードを実行するには、まず特権を標準ユーザーから管理者に昇格させる必要があります。 これを行うには、アプリケーション アイコンを右クリックし、管理者として実行することを示すことで、アプリケーションを起動します。

適用対象

PerformanceCounter(String, String, String)

ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs

PerformanceCounter クラスの新しい読み取り専用インスタンスを初期化し、ローカル コンピューター上の指定されたシステム またはカスタム パフォーマンス カウンターおよびカテゴリ インスタンスに関連付けます。

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName, System::String ^ instanceName);
public PerformanceCounter(string categoryName, string counterName, string instanceName);
new System.Diagnostics.PerformanceCounter : string * string * string -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String, instanceName As String)

パラメーター

categoryName
String

このパフォーマンス カウンターが関連付けられているパフォーマンス カウンター カテゴリ (パフォーマンス オブジェクト) の名前。

counterName
String

パフォーマンス カウンターの名前。

instanceName
String

パフォーマンス カウンター カテゴリ インスタンスの名前。カテゴリに 1 つのインスタンスが含まれている場合は空の文字列 ("")。

例外

categoryName は空の文字列 ("") です。

-又は-

counterName は空の文字列 ("") です。

-又は-

指定されたカテゴリが無効です。

-又は-

指定されたカテゴリはマルチインスタンスとしてマークされ、インスタンス名を使用してパフォーマンス カウンターを作成する必要があります。

-又は-

instanceName が 127 文字を超える場合。

-又は-

categoryName counterNameはさまざまな言語にローカライズされています。

categoryName または counterNamenull

システム API にアクセスするときにエラーが発生しました。

管理特権なしで実行されているコードが、パフォーマンス カウンターを読み取ろうとしました。

注釈

パラメーター文字列では、大文字と小文字は区別されません。

コンストラクターのこのオーバーロードは、渡す値に CategoryNameCounterName、および InstanceName プロパティを設定し、 MachineName プロパティをローカル コンピューター "."に設定します。

このコンストラクターは、パフォーマンス カウンターを初期化し、インスタンスをローカル コンピューター上の既存のカウンター (システムまたはカスタム カウンター) に関連付けます。 CategoryNameCounterName、およびInstanceNameプロパティに渡す値は、ローカル コンピューター上の既存のパフォーマンス カウンターを指している必要があります。 ポイントするパフォーマンス カウンター インスタンスが無効な場合、コンストラクターを呼び出すと例外がスローされます。

このオーバーロードは、読み取り専用または読み取り/書き込みカウンターにアクセスできますが、読み取り専用モードでアクセスできます。 このオーバーロードを使用して作成された PerformanceCounter インスタンスは、カウンター自体が読み取り/書き込みであっても、カウンターに書き込むことができません。

パフォーマンス カテゴリ インスタンスを作成するには、PerformanceCounter コンストラクターでinstanceNameを指定します。 instanceNameで指定されたカテゴリ インスタンスが既に存在する場合、新しいオブジェクトは既存のカテゴリ インスタンスを参照します。

Windows Vista、Windows XP Professional x64 Edition、または Windows Server 2003 でパフォーマンス カウンターを読み取る場合は、パフォーマンス モニター ユーザー グループのメンバーであるか、管理者特権を持っている必要があります。

Windows Vista のパフォーマンス カウンターにアクセスするために特権を昇格する必要を回避するには、パフォーマンス モニター ユーザー グループに自分を追加します。

Windows Vista では、ユーザー アカウント制御 (UAC) によってユーザーの権限が決定されます。 組み込みの Administrators グループのメンバーである場合は、標準ユーザー アクセス トークンと管理者アクセス トークンという 2 つのランタイム アクセス トークンが割り当てられます。 既定では、標準のユーザー ロールになります。 パフォーマンス カウンターにアクセスするコードを実行するには、まず特権を標準ユーザーから管理者に昇格させる必要があります。 これを行うには、アプリケーション アイコンを右クリックし、管理者として実行することを示すことで、アプリケーションを起動します。

適用対象

PerformanceCounter(String, String, String, Boolean)

ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs

PerformanceCounter クラスの新しい読み取り専用または読み取り/書き込みインスタンスを初期化し、ローカル コンピューター上の指定されたシステムまたはカスタム パフォーマンス カウンターとカテゴリ インスタンスに関連付けます。

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName, System::String ^ instanceName, bool readOnly);
public PerformanceCounter(string categoryName, string counterName, string instanceName, bool readOnly);
new System.Diagnostics.PerformanceCounter : string * string * string * bool -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String, instanceName As String, readOnly As Boolean)

パラメーター

categoryName
String

このパフォーマンス カウンターが関連付けられているパフォーマンス カウンター カテゴリ (パフォーマンス オブジェクト) の名前。

counterName
String

パフォーマンス カウンターの名前。

instanceName
String

パフォーマンス カウンター カテゴリ インスタンスの名前。カテゴリに 1 つのインスタンスが含まれている場合は空の文字列 ("")。

readOnly
Boolean

true 読み取り専用モードでカウンターにアクセスする場合。読み取り/書き込みモードでカウンターにアクセスする false

例外

categoryName は空の文字列 ("") です。

-又は-

counterName は空の文字列 ("") です。

-又は-

要求された読み取り/書き込みアクセス許可設定がこのカウンターに対して無効です。

-又は-

指定されたカテゴリが存在しません ( readOnlytrueされている場合)。

-又は-

指定されたカテゴリが .NET Framework カスタム カテゴリではありません ( readOnlyfalseされている場合)。

-又は-

指定されたカテゴリはマルチインスタンスとしてマークされ、インスタンス名を使用してパフォーマンス カウンターを作成する必要があります。

-又は-

instanceName が 127 文字を超える場合。

-又は-

categoryName counterNameはさまざまな言語にローカライズされています。

categoryName または counterNamenull

システム API にアクセスするときにエラーが発生しました。

管理特権なしで実行されているコードが、パフォーマンス カウンターを読み取ろうとしました。

注釈

パラメーター文字列では、大文字と小文字は区別されません。

読み取り専用モードまたは読み取り/書き込みモードでパフォーマンス カウンターにアクセスするには、このオーバーロードを使用します。

このコンストラクターのオーバーロードは、渡す値に CategoryNameCounterName、および InstanceName プロパティを設定し、 MachineName プロパティをローカル コンピューター "."に設定します。

このコンストラクターは、パフォーマンス カウンターを初期化し、インスタンスをローカル コンピューター上の既存のカウンター (システムまたはカスタム カウンター) に関連付けます。 CategoryNameCounterName、およびInstanceNameプロパティに渡す値は、ローカル コンピューター上の既存のパフォーマンス カウンターを指している必要があります。 指定したパフォーマンス カウンター インスタンスが無効な場合、コンストラクターを呼び出すと例外がスローされます。

このオーバーロードを使用してシステム カウンターに接続できますが、システム カウンターに書き込むことはできません。 したがって、システム カウンターに接続するときに readOnlyfalse に設定すると、コンストラクターは例外をスローします。

パフォーマンス カテゴリ インスタンスを作成するには、PerformanceCounter コンストラクターでinstanceNameを指定します。 instanceNameで指定されたカテゴリ インスタンスが既に存在する場合、新しいオブジェクトは既存のカテゴリ インスタンスを参照します。

Windows Vista、Windows XP Professional x64 Edition、または Windows Server 2003 でパフォーマンス カウンターを読み取る場合は、パフォーマンス モニター ユーザー グループのメンバーであるか、管理者特権を持っている必要があります。

Windows Vista のパフォーマンス カウンターにアクセスするために特権を昇格する必要を回避するには、パフォーマンス モニター ユーザー グループに自分を追加します。

Windows Vista では、ユーザー アカウント制御 (UAC) によってユーザーの権限が決定されます。 組み込みの Administrators グループのメンバーである場合は、標準ユーザー アクセス トークンと管理者アクセス トークンという 2 つのランタイム アクセス トークンが割り当てられます。 既定では、標準のユーザー ロールになります。 パフォーマンス カウンターにアクセスするコードを実行するには、まず特権を標準ユーザーから管理者に昇格させる必要があります。 これを行うには、アプリケーション アイコンを右クリックし、管理者として実行することを示すことで、アプリケーションを起動します。

適用対象

PerformanceCounter(String, String, String, String)

ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs
ソース:
PerformanceCounter.cs

PerformanceCounter クラスの新しい読み取り専用インスタンスを初期化し、指定したコンピューター上の指定したシステムまたはカスタム パフォーマンス カウンターおよびカテゴリ インスタンスに関連付けます。

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName, System::String ^ instanceName, System::String ^ machineName);
public PerformanceCounter(string categoryName, string counterName, string instanceName, string machineName);
new System.Diagnostics.PerformanceCounter : string * string * string * string -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String, instanceName As String, machineName As String)

パラメーター

categoryName
String

このパフォーマンス カウンターが関連付けられているパフォーマンス カウンター カテゴリ (パフォーマンス オブジェクト) の名前。

counterName
String

パフォーマンス カウンターの名前。

instanceName
String

パフォーマンス カウンター カテゴリ インスタンスの名前。カテゴリに 1 つのインスタンスが含まれている場合は空の文字列 ("")。

machineName
String

パフォーマンス カウンターとそれに関連付けられているカテゴリが存在するコンピューター。

例外

categoryName は空の文字列 ("") です。

-又は-

counterName は空の文字列 ("") です。

-又は-

要求された読み取り/書き込みアクセス許可設定がこのカウンターに対して無効です。

-又は-

指定したコンピューターにカウンターが存在しません。

-又は-

指定されたカテゴリはマルチインスタンスとしてマークされ、インスタンス名を使用してパフォーマンス カウンターを作成する必要があります。

-又は-

instanceName が 127 文字を超える場合。

-又は-

categoryName counterNameはさまざまな言語にローカライズされています。

machineName パラメーターが無効です。

categoryName または counterNamenull

システム API にアクセスするときにエラーが発生しました。

管理特権なしで実行されているコードが、パフォーマンス カウンターを読み取ろうとしました。

注釈

パラメーター文字列では、大文字と小文字は区別されません。

コンストラクターのこのオーバーロードは、渡された値に CategoryNameCounterNameInstanceName、および MachineName プロパティを設定します。

このコンストラクターは、パフォーマンス カウンターを初期化し、指定されたコンピューター上の既存のカウンター (システムまたはカスタム カウンター) にインスタンスを関連付けます。 CategoryNameCounterNameInstanceNameMachineNameのプロパティに渡す値は、既存のパフォーマンス カウンターを指している必要があります。 ポイントするパフォーマンス カウンター インスタンスが無効な場合、コンストラクターを呼び出すと例外がスローされます。 このオーバーロードは、読み取り専用または読み取り/書き込みカウンターにアクセスできますが、読み取り専用モードでアクセスできます。 このオーバーロードを使用して作成された PerformanceCounter インスタンスは、カウンター自体が読み取り/書き込みであっても、カウンターに書き込むことができません。

リモート パフォーマンス カウンターに書き込むことはできません。 リモート コンピューターに接続する PerformanceCounter クラスの読み取り/書き込みインスタンスを指定できるオーバーロードはありません。

パフォーマンス カテゴリ インスタンスを作成するには、PerformanceCounter コンストラクターでinstanceNameを指定します。 instanceNameで指定されたカテゴリ インスタンスが既に存在する場合、新しいオブジェクトは既存のカテゴリ インスタンスを参照します。

Windows Vista、Windows XP Professional x64 Edition、または Windows Server 2003 でパフォーマンス カウンターを読み取る場合は、パフォーマンス モニター ユーザー グループのメンバーであるか、管理者特権を持っている必要があります。

Windows Vista のパフォーマンス カウンターにアクセスするために特権を昇格する必要を回避するには、パフォーマンス モニター ユーザー グループに自分を追加します。

Windows Vista では、ユーザー アカウント制御 (UAC) によってユーザーの権限が決定されます。 組み込みの Administrators グループのメンバーである場合は、標準ユーザー アクセス トークンと管理者アクセス トークンという 2 つのランタイム アクセス トークンが割り当てられます。 既定では、標準のユーザー ロールになります。 パフォーマンス カウンターにアクセスするコードを実行するには、まず特権を標準ユーザーから管理者に昇格させる必要があります。 これを行うには、アプリケーション アイコンを右クリックし、管理者として実行することを示すことで、アプリケーションを起動します。

Windows Vista では、リモート コンピューターがワークグループのメンバーである場合、ローカル ユーザー アカウントがフィルター処理されず、管理者アカウントに昇格できるように UAC を無効にする必要がある場合があります。 セキュリティ上の理由から、UAC を無効にすることは最後の手段である必要があります。 UAC の無効化の詳細については、「 ユーザー アカウント制御と WMI」を参照してください。

適用対象