他のプロジェクトで設定したブレークポイントが別のプロジェクトでも有効となる - by tara temp

Status : 

  By Design<br /><br />
		The product team believes this item works according to its intended design.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.


1
0
Sign in
to vote
ID 774195 Comments
Status Closed Workarounds
Type Bug Repros 0
Opened 12/12/2012 11:52:46 PM
Access Restriction Public

Description

同一ソリューション内に複数のVC++プロジェクトが存在する状態で、それぞれのプロジェクト内に同一ファイル名(内容も同じ?)のプログラムが存在する場合、他方のプロジェクトでそのファイルにブレークポイントを設定し、もう一方のプロジェクトをデバッグ実行すると、ブレークポイントを設定していないのにも関わらず、他のプロジェクトで設定した位置と同じ位置で停止する。
ただし、一方のファイル名を変更し、ユニークなファイル名にすると、上記の症状は発生しなくなる。
おそらく、複数プロジェクト内に、同一ファイル名のプログラムが存在する場合は、ブレークポイントの設定が他方のファイルにも影響しているように見える。(ただし、ブレークポイントのマークは表示されない。)
Sign in to post a comment.
Posted by tara temp on 1/6/2013 at 4:10 PM
ご回答ありがとうございます。
私からの質問内容が正しく伝わっていないようなので、再度連絡させていただきます。

同一ソリューション内の別プロジェクトに存在している同じ名前のプログラムファイルは、ファイル名は同じですが、
ファイルの保存PATHが異なるそれぞれ独立したファイルとなります。また、ソースコードの内容も異なる場合もあります。
つまり、ファイル名は同じですが、保存先も内容も異なる別ファイルとなります。
この場合でも、ブレークポイントを設定すると、他方の関係の無いプロジェクトでもブレークポイントを設定していないのにも関わらず
停止する仕様ということなのでしょうか?

ご回答の内容は、同一ファイルを、複数のプロジェクトで参照した場合についての動作を述べているのでしょうか?

お手数ですが、ご回答をお願いいたします。
Posted by Microsoft on 12/27/2012 at 11:37 AM
Hello Tara,

Thank you for contacting us. When you set a source file breakpoint, we intentionally will stop at that line in any process being debugged. Because the file is the same file in both places, we have no way to tell from the editor which project you meant to set the breakpoint for. I would recommend right-clicking on the breakpoint icon and selecting "Filter...". From there, you can set a filter by process name so that you can ensure the breakpoint is only triggered for the process you care about.

I hope this workaround works for you. Thanks.

Marc Paine
Visual Studio Debugger QA Lead.
Posted by Microsoft on 12/26/2012 at 6:38 AM
この度はフィードバックをお送りいただき、誠にありがとうございます。 現在、お送りいただきました報告内容に基づき問題を確認中ですので、しばらくお待ちください。 よろしくお願いいたします。

Repro Steps:
1. Create a VC++ project in a new solution.
(Type: Win32 console application)
(Option: Empty project)
2. Add the main.cpp file to the project you created, and enter the following code.
#include <stdio.h>
  int main()
  {
  printf("Test\n");
  return 0;
  }
3. Add another VC++ project to the solution.
(Type: Win32 console application)
(Option: Empty project)
4. Add the same program file as Step 2 above and enter the code.
5. Set up a breakpoint in the printf sentence in main.cpp of the project that was created first.
6. Run debug on the project created later.
7. Even though no breakpoint was created for the second project, it stops at the breakpoint position that was set up for the first project.

Actual Results:
When multiple projects exist within the same solution and programs of the same file name exist within each of these projects, if a breakpoint is set up in one file, other projects, when debug is executed, stop at the set breakpoint position, even though they are separate projects.

Expected Results:
The break point should apply only to the file for which it was set up.
It should not affect other programs of the same file name even if they exist within the same project.
When multiple projects exist within the same solution and programs of the same file name exist within each of these projects, if a breakpoint is set up in one file, other projects, when debug is executed, stop at the set breakpoint position, even though they are separate projects.
The breakpoint should apply only to the file for which it was set up.
It should not affect other programs of the same file name even if they exist within the same project.


Problem Description:
When multiple VC++ projects exist within the same solution, if programs of the same file name exist within each of these projects and a breakpoint is set up in one project file, another project, when debug is executed, stops at the same breakpoint position even though no break point is set up for this project. If, however, the file name is changed for one project to a unique file name, this phenomenon does not occur. It appears that the breakpoint is being applied to other files when programs of the same file name exist in multiple projects (although the breakpoint mark is not displayed).
Posted by Microsoft on 12/13/2012 at 12:50 AM
Thank you for your feedback, we are currently reviewing the issue you have submitted. If this issue is urgent, please contact support directly(http://support.microsoft.com)