Mfc Поток И Диалог

Тема в разделе "MS Visual C++", создана пользователем harimambura, 5 фев 2013.

  1. harimambura

    harimambura New Member

    Регистрация:
    5 фев 2013
    Сообщения:
    1
    Симпатии:
    0
    Здравствуйте, форумчане.
    Очень нуждаюсь в вашей помощи. вобщем вопрос следующий: необходимо в отдельном потоке отобразить окно диалога модально, при этом из основного потока использовать функции, описанные в классе этого диалога.

    пробую делать так (общий вид кода, только основа):

    Код (C++):
    #include "InformationDlg.h"

    CInformationDlg *InfoDlg= new CInformationDlg(L"");
    //***************************************************
    UINT ThreadProcess( LPVOID pParam )
    {
    InfoDlg->DoModal();

    UINT nResult = 1;
    return nResult;
    }

    void myfunc()
    {
    pThread = AfxBeginThread(ThreadProcess, this, THREAD_PRIORITY_NORMAL, 0,0 );
    ASSERT(pThread);
    InfoDlg->InitProgress2(1,12);
    InfoDlg->SetCaption(L"txt");
    InfoDlg->SetProgress2(6);
    }
    в хедере описан CWinThread* pThread;

    но после того, как поток запустился, на первой же функции InfoDlg->InitProgress2(1,12); бьет ошибку "an invalid argument was encountered", это в релизе, а в дебаге "Debug Assertion filed! file: f:\sp\vctools\vc7libs\ship\atlmfc\include\afxcmn.inl line:461".
    далее выполнение функции myfunc обрывается, хоть диалог и отображается. Что не так?
     
Загрузка...
Похожие Темы - Mfc Поток Диалог
  1. PetrovVA
    Ответов:
    3
    Просмотров:
    1.717
  2. Antonim
    Ответов:
    1
    Просмотров:
    1.236
  3. Antonim
    Ответов:
    4
    Просмотров:
    1.811
  4. ezus
    Ответов:
    4
    Просмотров:
    4.686
  5. borpavlenko
    Ответов:
    6
    Просмотров:
    5.306

Поделиться этой страницей