C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: 違うソリューションに対してプロセスにアタッチする方法について


(過去ログ 109 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■64723 / inTopicNo.1)  違うソリューションに対してプロセスにアタッチする方法について
  
□投稿者/ 悩み多きランナー (12回)-(2012/12/24(Mon) 12:44:04)

分類:[C#] 

お世話になります。

言語はC#でVisualStudio2005を使用しています。
デバッグ時にEXE作成用のソリューションファイルから共通関数を含む別のソリューションに
デバッグ遷移したいと思ってます。

例えば下記のプログラムがあるときに@にブレークポイントを設定し
デバッグによりステップインで見ていく時にAへ遷移してデバッグしていきたいのですが
ソリューションが異なるのでステップインで見ることができません。
VisulaStudioにも「プロセスにアタッチ」というのがあり@のところで
デバッグ状態にしてCommon.sinを開いてメニューバーの「デバッグ」の中にある
「プロセスにアタッチ」を選択しMain.exeの
プロセスを選択してアタッチしてみても「プロセスにアタッチできません。
デバッガは既にアタッチされてます。」のメッセージが表示されてしまいます。

下記のように異なるソリューションでMainからCommonへデバッグ遷移
できる方法があればご教示お願いします。

◆Main.sin(Main.cs ビルド時:Main.exe 参照設定:Common.dll)
public void Start(stirng[] args)
{
If (args.Length != 3){             …@
Messagebox.show "パラメータの数が違います"
}

LogWriter.WriteMessage("ログ出力開始");

   …
}
◆Common.sin(LogWriter.cs ビルド時:Common.dll)
public Class LogWriter{              …A
public static void WriteMessage(string msg){
Console.WriteLine(msg);
}
}


引用返信 編集キー/
■64724 / inTopicNo.2)  Re[1]: 違うソリューションに対してプロセスにアタッチする方法について
□投稿者/ Azulean (74回)-(2012/12/24(Mon) 19:19:33)
No64723 (悩み多きランナー さん) に返信
> VisulaStudioにも「プロセスにアタッチ」というのがあり@のところで
> デバッグ状態にしてCommon.sinを開いてメニューバーの「デバッグ」の中にある
> 「プロセスにアタッチ」を選択しMain.exeの
> プロセスを選択してアタッチしてみても「プロセスにアタッチできません。
> デバッガは既にアタッチされてます。」のメッセージが表示されてしまいます。

この方法はできません。
エラーメッセージにもあるように、一つのプロセスに複数のデバッガを割り当てることはできないためです。
(割り当てられることができたら、ステップ実行とか、ややこしいことになりますよね)


> 下記のように異なるソリューションでMainからCommonへデバッグ遷移
> できる方法があればご教示お願いします。

どういった構成になっているのかわかりませんが、dll ファイルと一緒に pdb ファイルもコピーすれば、Main.sln 側からステップインで中に入れたような気がしますが、だめでしたっけ?

(ソリューションにないソースコードにブレークポイントを貼りたいなら、先にそのファイルを開いておけばよい。pdb ファイルがあること前提ですが。
引用返信 編集キー/
■64738 / inTopicNo.3)  Re[2]: 違うソリューションに対してプロセスにアタッチする方法について
□投稿者/ 悩み多きランナー (13回)-(2012/12/25(Tue) 21:42:10)
Azuleanさん

お世話になります。

pdbファイルが関係していることを初めて知りました。
コピーしただけではできませんでしたが、デバッグモードでCommon.Dllを作成しMain.sinでそのDLLに対して
参照設定することで、Commonへうまくデバッグ遷移できました。

ありがとうございます。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -