掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ファイルの上書きについて (ID:21151)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
質問者の方がお休みのようなので補足しておきます。 WinExecは以前との互換性のためにあるもので本来はCreateProcessを使用すべきですがこの件は置いといて・・・ WinExecは呼び出されたプロセスが初期化が完了した時又はタイムアウトになった時に制御が返ってきます。 初期化の完了はプロセスがメッセージループに入った時です(GetMeesage関数を呼び出した時) 今回の件の場合AがWinExecでBを呼び出しているのにBが初期化処理を完了せずにFormCreateでループしているため約30秒のタイムアウトになるまでAはWinExecから制御が戻りません。すらわちAがまだ終了していないのでBはAを上書きすることが出来ません。(デッドロック状態になっている) PostQuitMessageを出すとOKとのことですがWM_QUITは特別な処理をされるため、おそらくPostQuitMessageを呼んだ時点でWinExecは待ちループを抜けるものと思われます。 したがってBはFormCreateの中では初期化だけをしておいてメッセージループが始まってから件の処理を行えばよいと思います。 またAもFormCreateの中でWinExecを呼び出しているようですがFormCreateでは初期化以外はしないようにしたほうが良いと思います。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.