- PR -

他アプリから起動したアプリをデバッグする方法

投稿者投稿内容
まぁ
会議室デビュー日: 2008/11/05
投稿数: 19
投稿日時: 2009-01-21 16:59
unibonさん、ご意見有難う御座います。

(A)のソースはいじれません。
理由としましては、仮にアタッチしてデバッグしたとしても、その後デバッグ用に
実装した部分は削除しなければなりません。
そうなると、ソース変更となり再度試験を行わなければならないのです。
仮に、プリプロセッサで有効/無効が切り替えられるようにしたとしても、
そのデバッグ用の記述が会社の規約で認めてられていないので、駄目なのです。

自分でもない知恵を絞って調べている状態です。
タコツボ
常連さん
会議室デビュー日: 2004/01/20
投稿数: 22
お住まい・勤務地: 京都・大阪
投稿日時: 2009-01-21 18:16
unibonさんご指摘のlinkのそばにこんなのがありました。

http://msdn.microsoft.com/ja-jp/library/a329t4ed(VS.80).aspx

今手元に環境が無いので試せないのと、ハズしてたらすみませんです。
Toshi
ベテラン
会議室デビュー日: 2007/09/18
投稿数: 68
お住まい・勤務地: 関東のどっか
投稿日時: 2009-01-21 18:24
はずしていたら申し訳ないのですが、
(A)のプロジェクトをVS2005で起動

プロジェクトのプロパティのデバッグ欄で
「外部アプリケーションの開始」 → (B)を選択

としてみてはどうでしょう?
まぁ
会議室デビュー日: 2008/11/05
投稿数: 19
投稿日時: 2009-01-21 18:37
タコツボさん、ご回答有難う御座います。

早速試してみました。
レジストリに実行ファイルの登録を行い、他アプリから
デバッグしたいアプリが起動された時にデバッガが起動し、
デバッグできました。

これでようやく試験が出来ます。

有難う御座いました。
まぁ
会議室デビュー日: 2008/11/05
投稿数: 19
投稿日時: 2009-01-21 18:40
Toshiさん、ご回答有難う御座います。

Toshiさんのご意見を試す前にタコツボさんのご意見を実施して
成功しました。

有難う御座います。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2009-01-21 18:55
ちょっと気になったのですが、今は debug モードでビルドして、テストしているのですね?

では、出荷するときは、debug モードで出荷するのでしょうか?
もし、release モードでビルドし直して、“テストをし直さずに”出荷するおつもりでしたら、ちょっと待って下さい。

debug と release で、あなた方が作られたコードは変わりませんが、オブジェクトは変わります。最適化されたり、デバッグのための情報がなくなったりします。また、バインドされるライブラリも変わります。
過去2〜3件、debug モードでは期待通りに動くが、release モードでは期待通りにならない、という質問も有りました。

そういうことは、考慮されているでしょうか。
まぁ
会議室デビュー日: 2008/11/05
投稿数: 19
投稿日時: 2009-01-21 19:18
Jittaさん、ご指摘有難う御座います。

今回は、"Debug"モードで単体試験を行います。
単体試験結果がOKになりますと"release"モードでビルドします。

ここからは、結合試験を実施します。
仮に、"release"モードで実行結果に不具合が発生した場合は、
"Debug"モードには戻さずに"release"モードで解析します。
ただ、単体試験でステップ実行を行っているので解析は机上で行います。
それでも解析できない場合は、ログ出力処理を追加し単体試験をやり直して
ログで解析を行います。
最終的には、結合試験("release"モード)で不具合が無くなるまで繰り返します。

結合試験が完了してからは、製品出荷試験("release"モード)があります。
ここで不具合が発生した場合は、解析、ソース修正、単体試験、結合試験をやり直して
再度、製品出荷試験を行います。

製品出荷試験をクリアして製品として出荷されます。

上記の工程で単体試験のみ"Debug"モードで行い、その後は"release"モードで
試験を行いますので、"release"モードで試験を行わない事はありません。

会社の規定が厳しいので、"Debug"モードでOKだったから"release"モードは問題ない
とは行きませんのでご安心下さい。

また、単体試験はコーディング者、結合試験は結合試験グループ、製品出荷試験は
製品出荷試験グループが行いますので、あらゆる手順で実施されます。

ご指摘有難う御座います。
タコツボ
常連さん
会議室デビュー日: 2004/01/20
投稿数: 22
お住まい・勤務地: 京都・大阪
投稿日時: 2009-01-22 09:04
あくまで単体試験という位置付けなのであれば、
AB間の情報のやり取りの仕様の複雑さにもよりますが
(というか複雑であれば尚のこと)、
テスト用のニセBをAとは別のprojectで作るべきかとも思いますが。

正規のBからしか起動されないということであれば、
異常系等のテストも充分に行えるかは疑問にも思えますし。

スキルアップ/キャリアアップ(JOB@IT)