3

特定のアプリケーションのロード時に自動的に挿入されるDLLを作成しています。作業中にプログラムを実行したいので、特定の場合(バグハンティングなど)にユーザーがプログラムなしでプログラムをロードしたい場合があるため、DLLのロードを防止したい場合があります。現在、これを行うには、ロード時にGetKeyStateでVK_LCONTROL、VK_LSHIFT、およびVK_LMENUをチェックし、すべてがダウンしている場合は、サイレントにアンロードします。ただし、プログラムがロードされ、DLLがロードされたかどうかを確認するのにかなりの時間がかかる場合があるため、アンロードするときにユーザーに通知したいと思います。私はMessageBoxを検討しましたが、それはあまりにも破壊的です。MessageBeepを試しましたが、セットアップでは何も起こらなかったようです。現在、アンロードを示すために単純な2回のビープ音(ビープ音、スリープ音、ビープ音)を使用しています。しかし、それはおそらく私の同僚にとってかなり厄介になるでしょう。システムトレイアイコンも検討しましたが、微妙なバグが発生しないように最小限の通知を目指している一方で、多くのコードとバグの可能性があります。

他の誰かが、入力が正常に受信されたことをユーザーに通知するための微妙な方法(できれば視覚的)を知っていますか?

4

7 に答える 7

4

目標の範囲が限られていることを考えると、これは実際にはタスクバー通知バルーンチップの適切な使用法である可能性があります。

編集:ジョーが彼の同意する答えに投稿したリンクを追加しました。ありがとう、ジョー!:)

于 2009-01-20T21:47:35.190 に答える
2

アプリの下部にステータスバーがある場合は、そこにメッセージテキストを配置できます...

于 2009-01-20T21:35:12.437 に答える
1

自分自身を閉じる時限メッセージボックスを検討しましたか?

http://www.codeguru.com/cpp/misc/misc/messageboxhandling/article.php/c203

于 2009-01-20T21:43:04.183 に答える
0

ウィンドウのタイトルを変更し、後で元に戻します。そうすれば、ユーザーがAltキーを押しながら他のプログラムに移動した場合でも、ユーザーからフォーカスを奪うことなく、変更を確認できます。

于 2009-01-20T21:46:29.967 に答える
0

グレッグDに同意します。

ここを見てください:http ://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/15cbdc8d-fde3-44ab-bbbc-e50cb2071674/

于 2009-01-20T21:52:07.363 に答える
0

2 つのアイデア:

  1. それを回してください。DLLロードされていることを視覚的に示し、インジケータがないことで DLL がアンロードされたことを知らせます。おそらくタイトルバーの接尾辞。そうすれば、起動時だけでなく、いつでも知ることができます。

  2. FlashWindowEx .

于 2010-08-23T21:51:17.020 に答える
0

短いメッセージが表示されたウィンドウを開き、0.5 秒ほど後に再び自動的に閉じることができます。ユーザーの操作は必要ないので、混乱を招くとは思いません。

于 2009-01-20T21:42:38.927 に答える