トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

PerformanceCounter で InvalidOperationException が発生する

[コンピュータ]

現象

Windows7 etc.. にて以下コード例のようにパフォーマンスカウンタ読み込みをしようとしたとき、
オブジェクト生成時に例外が出ることがあります。

// システムのトータル稼働時間を得るカウンタ
upTime = new PerformanceCounter("System", "System Up Time",true);

まず、引数のカテゴリ名称、カウンタ名称を確認してください。
「コントロールパネル」>「管理ツール」>「パフォーマンスモニター」画面を開き、
次に、左側ツリーの「パフォーマンスモニター」をクリックして右側ペイン上部の緑の「+(追加)」で出てくる「カウンターの追加」ダイアログのリストを見てみます。

本来であれば、ここにカテゴリ、カウンタ名称が存在するはずです。

このとき、本来存在するはずのカテゴリ "System" や項目 "System Up Time" が現れない場合、
LODCTR /R コマンドで、レジストリの文字列と情報を再構築することでこれらの項目が回復する場合があります。

LODCTR /R
パフォーマンス レジストリの文字列と情報を、現在のレジストリ設定と
バックアップ INI ファイルに基づいて新たに再構築します。

※LODCTR.EXE は Windows のシステムフォルダにあります。

エラー: パフォーマンス カウンターの設定をシステムのバックアップ ストアから再構築
できませんでした。エラー コードは 5 です

※上記のようなエラーが出て再構築できない場合は、管理者権限で(コマンドプロンプトを管理者権限で起動して)実行してみてください。

perfmon.gif

 カテゴリ : もくしいゲームレシピコンピュータ雑文生活電子工作おいしい店マップ

                  Topページへ | もてないSNS「もくしい」