Bonjour,

j'ai un problème très étrange avec un projet Qt quand j'ai commencé à utiliser QThread

Je suis partit de mon projet sans aucun QThread, dont le code est ici http://piwigo.us/svn-mistic/UMWP-Autochanger/
je compile, pas de problème

j'ajoute une classe "Process" avec un slot doDownloadVersion(), je créé mon QThread, je configure, à la fin du constructeur de la classe "Controller"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
m_poProcess = new Process();
QThread* workerThread = new QThread(this);
connect(workerThread, SIGNAL(started()), m_poProcess, SLOT(doDownloadVersion()));
connect(m_poProcess, SIGNAL(remoteVersionDwnld(QString)), this, SLOT(vSlotCheckVersion(QString)));
m_poProcess->moveToThread(workerThread);
workerThread->start();
je compile, ça marche toujours

maintenant je fais "Tout recompiler" et PAF
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\ATLMFC\INCLUDE\atlbase.h:4878: erreur : C3861: '_beginthreadex'ÿ: identificateur introuvable
en gros tout allait bien temps qu'il ne compilait que les modifications

j'ai lu qu'il fallait utiliser le flag /MD pour ce genre de cas (sous VCC) mais il me semble que c'est déjà le cas : j'ai ceci dans le fichier B:\Qt\4.8.4\mkspecs\win32-msvc2010\qmake.conf utilisé pour la compilation
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
QMAKE_CFLAGS_RELEASE    = -O2 -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi
QMAKE_CFLAGS_DEBUG      = -Zi -MDd
j'ai essayé en Release et en Debug avec la même erreur

si quelqu'un sait ce qui doit être configuré et ou


ps: j'ai #include <atlbase.h> dans le fichier settings.cpp pour les méthodes d'accès au registre