0
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[VisualStudio]VisualStudio2019でリモートデバッグを行う(C++の場合)

Last updated at Posted at 2020-03-02

もくじ
https://qiita.com/tera1707/items/4fda73d86eded283ec4f

リモートデバッグ関連

やりたいこと

C#で行っていたリモートデバッグをC++でもやりたい。
以前やったことがあったのだが、メモを残しておらずやり方を忘れたのでメモしておく。

準備

準備や手順については、以前の記事(こちら)を参照。
この中の、
手順の4.」が、C++の場合の特有のやり方となるので、下にメモする。
(それ以外(リモートデバッガのダウンロードやPCの共有の設定)は、以前の記事と同じ。)

前提

今回は、下記のようなPCの設定にした。

設定内容 設定値
リモートPCのアドレス 192.168.31.21
リモートPCに作成する共有フォルダパス \\192.168.31.21\test
アプリ名 PInvokeTest.exe
リモートデバッガのポート番号 4024(デフォルトのまま)

リモートデバッグのためのC++のプロジェクトの設定

リモートデバッグをしたいC++のプロジェクトを [右クリック] > [プロパティ] を選択する。
image.png

[構成プロパティ] の中の [全般] を選択し、その中の**[出力ディレクトリ]**に、リモートPCの出力先としたい共有ディレクトリを入力する。(この例の場合「\\192.168.31.21\test」に出力するものとする)
image.png

[構成プロパティ] の中の [デバッグ] を選択し、その中の**[起動するデバッガ]のコンボボックスから、[リモートWindowsデバッガー]**を選択する。
image.png

リモートWindowsデバッガーの設定が表示されるので、その中で下記設定を行う。

  • リモートコマンド
    <リモートPCの共有フォルダパス>\<exeファイル名>.exe
  • リモートサーバー名
    <リモートPCのIPアドレス>:<リモートデバッガのポート番号>

今回の例では、下記のようにした。

  • リモートコマンド
    \\192.168.31.21\test\PInvokeTest.exe
  • 作業ディレクトリ
    \\192.168.31.21\test\
  • リモートサーバー名
    192.168.31.21:4024
    image.png

以上で、C++のプロジェクトの特有の設定はおわり。
あとは、リモートデバッガーをリモートPC側で起動して、リモートWindowsデバッガーボタン(又はF5)を押して、プログラムを実行すればOK。

image.png

備考とおことわり

本当は、MSの公式ドキュメントによると、下記のような設定や「配置」をしたりしないといけないっぽい。

image.png

が、これだとリモートPCのフォルダ構成を開発用PCと同じにしておかないといけないとかが確かあった(この記事書いたときには試してなくて、過去の記憶による。すみません)ので、上でやったような「出力フォルダを変えて、配置はしない」やり方でやることにした。
(作業ディレクトリの設定もせず、一時的なファイルは開発用PCに勝手にできたらええよといういい加減な感じ)

参考

プロジェクトのC++リモートデバッグ(MSDocs)
https://docs.microsoft.com/ja-jp/visualstudio/debugger/remote-debugging-cpp?view=vs-2019#remote_cplusplus

0
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?