VS2010のデバッグ中の[F12]キーについて

[戻る]
Taka 2011/09/06(火) 08:10:12
お世話になります。
Windows7, VisualStudio 2010 Pro, MFC

現在開発中のアプリに新しくコマンドを追加して、
そのショートカットキーとして[F12]キーを割り当てたのですが、
動作確認のため、デバッグ中にこのキーを押すと突然強制終了になり、
以下のようなメッセージが表示されます。

----------------------------
ヒープが壊れていることが原因として考えられます。
MyAppまたは読み込まれたDLLにバグがあります。

あるいは、MyApp.exe.がフォーカスを持っている時に、
ユーザーがF12キーを押したことが原因としてかんがえられます。
----------------------------

確かに[F12]キーを押しましたが、VS2010ではデバッグ中に[F12]キーを
押してはいけないのでしょうか?
VSがアクティブな状態では、[F12]キーでステップ実行ができますが、
MyAppがアクティブな状態でも[F12]キーは監視されているのでしょうか?

通常モードではこのような現象は起きないのですが、何だか不安です。

アプリのショートカットキーとして[F12]キーは使用すべきではないのでしょうか?
WordやExcelなどでは[F12]キーで「名前を付けて保存」コマンドが実行されます。

このあたりの事情についてご存じの方がいましたら教えて頂けませんか?

仲澤@失業者 2011/09/06(火) 09:34:53
VSの仕様ですね(vv;)。解除、取り消しはできません。
http://support.microsoft.com/kb/130667/jp
http://support.microsoft.com/kb/130667/en-us

[F1]はヘルプ。などと同じく、デファクトスタンダードとなっています。
アプリケーションとしては[F12]に割り当てた機能は、
VSのデバッグモードではデバックが困難になりますので、
一般にはこのキーに機能は割り当てない場合がほとんどです。

AR 2011/09/06(火) 17:41:52
 単にデバッグトレースで使えないキーというだけで、別に割り当てしちゃいけないキ
ーではありません。
 デバッガで試すことのできないメッセージは他にもたくさんあるので(WM_ENDSESSION
とか)、決して特殊なものでもありませんし、ログを出力させるようにするとかデバグの
手法が違うだけです。

 本末転倒のような気もしますが私の場合、最近のVS2010でMFCアプリならフルキー割り
当て可能なツールにするのは簡単なので、実行時に別のキーに割り当てちゃってます。

Taka 2011/09/08(木) 10:14:24
[[解決]]
アドバイスありがとうございました。
そのような事情があったのですね。

アプリを配布する場合には問題なさそうですが、
やはりちょっと気になるので、別のショートカットキーを割り当てるように
変更したいと思います。

ありがとうございました。

古いスレッドには追加発言できません。