0

イベント ログでハングを報告している .Net アプリケーションがあります。イベントには「アプリケーション ハング」と表示され、使用可能な詳細はありません。

そこで、ClrMD ライブラリを使用する C# コンソール アプリを作成しました。ただし、このアプリケーションは RemoteApp として公開されていることに注意してください。ClrMD をユーザーのプロセスにアタッチしようとすると、次のエラーが表示されます: Microsoft.Diagnostics.Runtime.ClrDiagnosticsException: プロセスにアタッチできませんでした。エラー 0。

管理者としてサーバーにログインしていて、別のユーザーとの独自の RDP セッションにいるため、これは驚くべきことではありません。

そのため、ClrMD アプリを実行すると、そのプロセスにアクセスできると考えて、ログインしているユーザーになりすますことにしました。これにより、別のエラーが発生しました: Microsoft.Diagnostics.Runtime.ClrDiagnosticsException: プロセスに接続できませんでした。エラー 1008。

ここからどこへ行くべきかを知るために 1008 が何を意味するのかについての手がかりが見つからないようです. 私はおそらく不可能なことをしようとしていることに気づきます。

  1. ClrMD を別のユーザーのプロセスにアタッチした人はいますか?
  2. そうでない場合、他のユーザーのプロセスにアタッチできるデバッグ ツールはありますか?
  3. そうでない場合、実稼働環境で ClrMD を使用した人がいますか? ClrMD ダンプをトリガーするタイミングを知るために、アプリがハングしていることをどのように知ることができますか? 別のバックグラウンド スレッドで UI スレッドを監視するだけですか?
4

1 に答える 1

0

同じ問題がありました。コンソール アプリを介してサーバー上で管理者として昇格して実行しても機能しませんでした。ただし、昇格されたアクセス許可を使用して PowerShell または Visual Studio 自体を実行すると機能します。デバッガーがライブ接続するには管理者権限が必要です。コンソールとして実行している場合、マニフェストの追加などは役に立たないようです。

于 2016-06-06T23:25:38.377 に答える