日峰です。

> VC6SP4+PlatformSDK July 2000+Windows2000上で、CFormView
> ベースのアプリケーションを開発しています。
>
> 要件上、F12キーが押されたときに、ある処理を実行する必要が
> あります。
>
> ここで「デバッガで実行した場合、F12を押すと、自分のハンドラに
> 飛んでくる前にブレークする」という現象が発生してしまいます。
> この際、TRACEなどのメッセージは何も表示されません。
>
> そのまま実行を継続すればハンドラに飛んできますし、動作上の
> 問題は無いように見えます。また、単にデバッグ版を実行した
> 場合は、問題なく動作します。しかし、放っておくのも何か嫌な
> 感じがしています。

--省略--

> MicrosoftのknowledgeBaseやサーチエンジンで、CFormViewとかVK_F12
> とかBaseAttachCompleteThunkとかをキーに検索したのですが、ヒントを
> 見つけられませんでした。
>
> この現象について何かご存じの方はいらっしゃいますでしょうか?

私は知りません。

F12をESCの代わりにエスケープ(脱出)に使っているプログラムもありますね。

現象を確認しました。
その通り、ブレークするが何も起きませんでした。
__asm int3 を実行するのは、 ::GetMessage 中です。
別の言い方をするとカーネルが実行中のときかな。

F12 breakで発見。
ID: Q130667
英語なんで詳細に読んでいませんが、
Windows NTだけの機能みたい。
デバッガが実行されているか確認していますね。
デバッガを使うならF12を使うなってことのようですね。