- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:デバッグ時と実行時の識別はできますか?)
デバッグ時と実行時の識別はできますか?
このQ&Aのポイント
- デバッグ時と実行時の識別は可能ですか?ユーザーの質問によると、多重起動の防止のために特定のコードを使用していますが、デバッグ実行時にはうまく機能しないことがあるようです。
- デバッグ時と実行時の識別は必要ですか?ユーザーの質問によると、多重起動防止のためのコードがありますが、デバッグ実行時には動作しないようです。
- デバッグ時と実行時の識別方法はありますか?ユーザーは多重起動を防ぐためのコードを使用していますが、デバッグ実行時には正しく動作しないようです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#111860
回答No.1
よく使う手法としましては、 「プロジェクト」-[Project1 のプロパティ] で、「実行可能ファイルの作成」のところにある。 「条件付コンパイル引数」に値を設定しておきます。 使い方は、こちらを参考。 http://msdn.microsoft.com/ja-jp/library/x435tkbk(VS.80).aspx
その他の回答 (1)
noname#111860
回答No.2
>下記のコードで期待どおりの動作を確認しました。 確認できて何よりです。 > ところで、マイクロソフトのドキュメントページは正確なのですが理解できてない人が読むと、混乱しそうですね。 失礼いたしました。 このあたりは、質問内容で使用されている語句から、 経験者であると思い込み、 マイクロソフトのHPを紹介してしまいました。 この点は今後の回答方法にも参考にさせていただきたいと思います。 ご指摘ありがとうございます。
お礼
すばやい回答ありがとうございます。 下記のコードで期待どおりの動作を確認しました。 思っていたことがそのまま出来たので拍子抜けするくらいです。 #If DEBUG Then MessageBox.Show("デバッグモードです") #Else '2重起動の防止 Dim pn As String = Process.GetCurrentProcess.ProcessName If Process.GetProcessesByName(pn).GetUpperBound(0) > 0 Then MessageBox.Show("すでに起動しています") Me.Close() Exit Sub End If #End If オプションチェックボックスのDEBUGをデフォルトのチェックしないままでよかったです。(そうでないと、実行時もDEBUGモードと識別される) ところで、マイクロソフトのドキュメントページは正確なのですが理解できてない人が読むと、混乱しそうですね。(判っている人がリファレンスとして利用するにはよいのですが・・・)