• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Проблема с AfxBeginThread

  • Автор темы Автор темы rules
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
R

rules

Я использовал эту функцию для запуска потока

Код:
void CTest2Dlg::onOK() 
{
// TODO: Add extra validation here
AfxBeginThread(run, this);


}

UINT CTest2Dlg::run(LPVOID p)
{
CTest2Dlg * me = (CTest2Dlg *)p;
  me->run();
return 0; 
}

void CTest2Dlg::run()
{
while(1)
{
.......... 
}



}


Но после того как переустановил винду и наново поставил VC на тот же код компилятор выдает ошибку

error C2665: 'AfxBeginThread' : none of the 2 overloads can convert parameter 1 from type 'unsigned int (void *)'

При чем старые файли, те которые пахали, и пашут и компилируются!!!
Ниче не погу понять. Помогите кто может!
 
Идея правильная.... Вот из MSDN :

Код:
UINT MyThreadProc( LPVOID pParam )
{
   CMyObject* pObject = (CMyObject*)pParam;

   if (pObject == NULL ||
       !pObject->IsKindOf(RUNTIME_CLASS(CMyObject)))
   return 1;   // if pObject is not valid

   // do something with 'pObject'

   return 0;   // thread completed successfully
}

// inside a different function in the program
.
.
.
pNewObject = new CMyObject;
AfxBeginThread(MyThreadProc, pNewObject);

Хотя я бы избавился от 2-й функции run - лучше уж start() тогда от беды подальше:)
 
Хотя я бы избавился от 2-й функции run - лучше уж start() тогда от беды подальше

Небольшой намек на то что данная функция, может быть функцией класса, но тогда статической
т.к. все знают, что не статические функции получают указатель на обьект this. :)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab