質問するログイン新規登録

質問編集履歴

2

例示の問題が解決したため、解決方法を提示

2017/06/16 00:09

投稿

moredeep
moredeep

スコア1507

title CHANGED
File without changes
body CHANGED
@@ -23,4 +23,16 @@
23
23
  COleControlのOnDraw関数にてSetTimer(1, 50, NULL)を実行(戻り値は1)
24
24
  →OnTimerが呼ばれない
25
25
  →他のActiveXオブジェクトで上記と同じことをしているものは、OnTimerが実行されている
26
- →Send(or Post)Message(WM_TIMER)を実行時は、OnTimerが呼ばれる
26
+ →Send(or Post)Message(WM_TIMER)を実行時は、OnTimerが呼ばれる
27
+
28
+ ---
29
+ 上記例1は一応の解決、例2はきちんと解決したので載せておきます。
30
+ 例1:OnPaintがこない
31
+ →問題のあるプロジェクトをコピーし、コードには修正を加えずに実行すると、何度試してもうまくいくため、プロジェクトに問題があると判断
32
+
33
+ 例2:OnTimerがこない
34
+ COleControlの子ウィンドウにOnPaintを設定しているが、そこで親クラスのOnPaintを呼ぶようになっていなかった
35
+ →子ウィンドウ側のクラスのOnPaintに、"__super::OnPaint()"を追記することで解決できた
36
+
37
+ やはり一口にメッセージが来ないといっても、様々な原因があります。
38
+ 予防的な解決方法だけでなく、問題が起きた時の原因特定のヒントになりうるもの等も、教えていただければ幸いです。

1

要点を太字に変更

2017/06/16 00:08

投稿

moredeep
moredeep

スコア1507

title CHANGED
File without changes
body CHANGED
@@ -2,10 +2,10 @@
2
2
  仕事で、MFCを使うことが度々ありますが、毎回といっていいほど、メッセージが受信できずに困ることがあります。
3
3
  いつもは対処療法のように、色々なところを少しずつ変更し、メッセージが受信できたらOKとしていますが、毎回毎回時間がかかりすぎています。
4
4
 
5
- OnCreateのタイミングをずらした(必要なとき→親のOnCreate直後に変更した)ら出来るようになった等、原因がまったくわからないがとりあえず出来た、が多いので、ちゃんとした原因が知りたいです。
5
+ OnCreateのタイミングをずらした(必要なとき→親のOnCreate直後に変更した)ら出来るようになった等、原因がまったくわからないがとりあえず出来た、が多いので、ちゃんとした**原因が知りたい**です。
6
6
 
7
- こういった、メッセージ自体が飛ばない問題の、予防的な解決方法をご存知の方、また、そういった情報が載っているサイトをご存知の方いらっしゃいましたら、教えていただけませんでしょうか。
7
+ こういった、メッセージ自体が飛ばない問題の、**予防的な解決方法**をご存知の方、また、そういった情報が載っているサイトをご存知の方いらっしゃいましたら、教えていただけませんでしょうか。
8
- 調べると、たいてい解決方法は見つかりますが、見つけて試すより、はじめから問題がないものを作りたいです。
8
+ 調べると、たいてい解決方法は見つかりますが、見つけて試すより、**はじめから問題がないものを作りたい**です。
9
9
 
10
10
  ###発生している問題・エラーメッセージ
11
11
  メッセージが受信できない場合がある。