2009-06-09 2 views

ответ

2

Либо одно приложение может запускать отдельный поток, либо какое-либо другое приложение может запускать собственный поток и периодически вызывать SendMessageTimeout() для отправки сообщения WM_NULL в соответствующее приложение. Если это время, это означает, что приложение является безответственным.

0

Если вы спрашиваете, как это сделать из самого процесса, вы не можете, это парадокс. Блокированный процесс не может определить, не отвечает ли он. Это было бы похоже на то, что кто-то пробудился, чтобы спросить себя, спал ли он.

Основываясь на этом и вашем other question, я бы предположил, что у вас длительная работа, и вы хотите, чтобы пользователь подождал, пока он не будет закончен. Если они нажмут ваше окно до его завершения, они получат «не отвечающий» и могут слишком рано разорвать приложение.

Необходимо выполнить долговременную операцию в отдельном потоке. Вот отличная отправная точка: CodeProject article

Смежные вопросы