7

Visual Studio を備えた他のマシンからマネージ アプリケーションをリモート デバッグするにはどうすればよいですか。これは私が試したことです:

  1. Visual Studio の一部であるリモート デバッグ フォルダーをリモート マシンにコピーして実行しますmsvsmon.exe(両方のマシンが 64 ビットであるため、64 ビット バージョン)。
  2. 両方のマシンで同じ Windows ログイン アカウントを使用します。
  3. 次に、Visual Studio を起動し、attach を使用して処理します。トランスポートで「デフォルト」を選択し、修飾子でmsvsmon.exe実行中のマシンのホスト名を指定します。
  4. 次に、更新ボタンを押して、そのマシン上のプロセスのリストを表示します。もう一方には、「ユーザー xyz が接続されています」と表示されていることがわかります。ただし、更新は失敗し、次のエラーが発生します。 エラー画面

ここで何が間違っていますか?私はVS2008 Proで試していますが、問題があれば両方のシステムのOSはWindows Server 2008 R2です。

注: リモート トランスポートを使用して管理されていないアプリケーションを問題なくデバッグできます。

4

5 に答える 5

5

マシンが 64 ビットであっても、実行しているアプリケーションが 64 ビットであることを確認してください。たとえば、リモート マシンで 32 ビット アプリケーションをデバッグしている場合は、32 ビット バージョンの msvsmon.exe を実行する必要があります。

これは答えではないかもしれませんが、確認するためにチェックするものです。

2017年更新

ここ数年、リモート デバッグを頻繁に使用するようになったので、通常は対処しなければならない問題がいくつかあることに気付きました。

  1. 各マシンで同じバージョンの msvsmon が使用されていることを確認してください。
  2. 認証が正しく構成されていることを確認してください (最初に認証が機能しないことを試してから、必要に応じて後で有効にします)。
  3. プロセスにアタッチするときは、「アタッチ先」設定が正しいことを確認してください (つまり、マネージド .NET バージョン、ネイティブ コードなど)。
  4. msvsmon が管理者として、またはデバッグするアプリケーションと同じユーザー ID として実行されていることを確認してください。
于 2013-08-08T19:02:50.520 に答える
2

OPに対する直接の回答ではありませんが、それでも役立つ可能性があり、同様の状況から何度も私を掘り出しました.

WinDBG (または同様のもの) のインストールを検討し、正しいシンボル \ コード セットアップを使用してデバッグすることを確認することをお勧めします。WinDBG の学習曲線はかなり急ですが、非常に高いレベルであっても、それだけの価値はあると思います。これは非常に軽量です。つまり、元の投稿のコンテキストで便利であり、VS のようなものを通常はインストールできない本番環境などでも使用できます。

急いでいる場合、これはおそらくオプションではありませんが、長期的には実行する価値があります。

クリス

PS: ウェブ上、特に Pluralsight のようなサイトには、良いコースがいくつかあります (幸せな顧客であることを除いて、私は関係がありません)。

于 2013-08-11T20:08:30.670 に答える
1

私はこの作品を作るのに多くの時間を費やしました。しかし、私は成功し、マネージド アプリケーションを完全にデバッグできるようになりました。私はそれを機能させるためにこのタスクのリストに従います:

・対象のPCをドメインに追加し、Visual StudioでPCと同じアカウントでログインします。

-正しい Visual Studio リモート デバッガー (msvsmon.exe) を実行します。私は 2010 バージョンを使用しています。

-ターゲット PC のファイアウォールをオフにします。

- 開発用コンピューターの devenv.exe (Visual Studio exe) の Windows ファイアウォールに例外を追加します。

-仮想PCにOracleVMを使用する場合、ネットワークアダプターをNATモードにすることはできません(ブリッジアダプターを使用しました)。

-使用するデバッグ アドレス: DOMAIN\USER@PCNAME (例: MyGreatDomain\Myself@DEBUGPC)。

-「Debug->Attach to Process」ウィンドウを使用してデバッグを開始する場合、「Select」ボタンを使用して「Attach to:」を編集する必要があります - マネージ (v4.0) コード、ネイティブ コードが必要でした。

-pdb ファイルは、exe の実行に使用するディレクトリと同じディレクトリにある必要があります。exeとpdbを含むディレクトリをターゲットコンピューターに直接マップしました。

- Visual Studio では、[ツール] -> [オプション] に移動し、[デバッグ] -> [全般] を展開する必要があります。また、[マイ コードのみを有効にする (管理対象のみ)] のチェックを外します。

それを機能させるのは本当に複雑ですが、後で時間を大幅に節約できます...

于 2014-07-29T09:45:39.830 に答える