ダイアログ ボックスのフリーズを解除する方法を教えてください。私は MFC を使用しており、ボタンが押されたときに実行したい無限ループがあります。ただし、無限ループが開始されると、ダイアログ ボックスがフリーズします。今 、誰かが同様の問題を抱えているこのスレッドを見ました。
残念ながら、マルチスレッドを試してみましたが、OLE オートメーションを使用する API を使用していて、未処理のメモリ例外が発生しているため、うまくいかないことがわかりました。これは、プログラムがシリアルポートを使用していて、シリアルポートへのハンドルを1つのスレッドでしか使用できない場所を読んだためだと思います。
私のプログラムは、誰かが私のモデムにダイヤルインしたかどうかを確認し、ファイルが送られてくるのを待ってから電話を切るだけです。これが私のループです。
while(1)
{
//get rid of input buffer
ts->_this->m_pHAScript->haReleaseRemoteInput();
ts-> _this->textBox->SetWindowTextA("thread Commence");
//wait for connected
if(success = ts->_this->m_pHAScript->haWaitForString("CONNECT",timeout))
{
//getFile
if(success = ts->_this->m_pHAScript->haWaitForXfer(5000))
{
//hangup
ts->_this->haTypeText("+++ath\r");
}
}
}
ダイアログ ボックスのフリーズを解除する方法はありますか?