40

.NET Windows サービス アプリをデバッグしようとすると、パフォーマンス カウンターの ReadOnly プロパティに関するエラーが繰り返し発生します。このアプリは、x86 Windows Vista または x86 Windows 2003 で正常に動作します。新しい 64 ビット開発マシンでは動作しなくなりました。

管理モードで、64 ビットおよび 32 ビットのコマンド ライン VCVARS.bat で、関連する InstallUtil 呼び出しを実行しました。カテゴリと各パフォーマンス カウンターの設定でエラーは発生しません。しかし、perf ctrs を読み取り専用に設定するかどうかに関係なく、次のようになります。

要求されたパフォーマンス カウンターはカスタム カウンターではなく、ReadOnly として初期化する必要があります。

アップデート

Windows 7 の 32 ビット バージョンでマシンを再インストールしましたが、奇妙なことに、まだこのエラーが発生します。唯一の変更点は、Windows Vista Business から Windows 7 Professional への移行です。これは鐘を鳴らしますか?

4

4 に答える 4

56

これは、パフォーマンス カウンター (またはカテゴリ)が存在しないためですが、恐ろしいエラー メッセージが表示されます。

カウンターの perfmon を調べてください。関連するマシンには存在しないはずです。

これは .Net perf カウンターで時々発生することがありますが (理由はわかりません)、lodctr 1を使用すると元に戻ります。取得しようとしているパフォーマンス カウンターを指定していただければ、さらにサポートを提供できる可能性があります。

  1. 並べられた例は .Net 1.1 用であることに注意してください。それに応じて、さまざまなフレームワークに合わせて調整してください。
于 2010-01-17T17:52:26.520 に答える
9

この問題の変種に遭遇しましたが、リフレクターに .net パフォーマンス カウンター タブが表示されていましたが、実際にはカウンターがありませんでした。

それらを再度追加する必要がありました

lodctr /R
cd C:\Windows\Inf\.NETFramework
lodctr corperfmonsymbols.ini
于 2013-01-25T01:26:34.777 に答える