Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1330 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  création d'un Thread sous MFC

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

création d'un Thread sous MFC

n°636409
lecoyote
Posté le 09-02-2004 à 20:09:15  profilanswer
 

Comment fait-on pour créé un Thread sous Visual C++ 6.0 avec la MFC ?
tte les aides que je trouve sous pour les APIwin32 :(

mood
Publicité
Posté le 09-02-2004 à 20:09:15  profilanswer
 

n°636416
polo021
Posté le 09-02-2004 à 20:11:36  profilanswer
 

regarde de ce côté :

Code :
  1. CWinThread * pThread =
  2. AfxBeginThread(ComputeThreadProc, GetSafeHWnd(), THREAD_PRIORITY_NORMAL);


n°636420
blackgodde​ss
vive le troll !
Posté le 09-02-2004 à 20:12:35  profilanswer
 

http://msdn.microsoft.com/library/ [...] Thread.asp


---------------
-( BlackGoddess )-
n°636422
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 09-02-2004 à 20:13:34  profilanswer
 

lecoyote a écrit :

Comment fait-on pour créé un Thread sous Visual C++ 6.0 avec la MFC ?
tte les aides que je trouve sous pour les APIwin32 :(


t'as pas du bien chercher alors :o
http://www.google.fr/search?source [...] MFC+thread


---------------
J'ai un string dans l'array (Paris Hilton)
n°636437
lecoyote
Posté le 09-02-2004 à 20:31:50  profilanswer
 

un prof qui m'avait filé une doc. qui stipule qui la majorité des thread en c++ se font en winapi ...
g pas trop chercher... c vrai, ms merci pr les liens

n°638045
lecoyote
Posté le 10-02-2004 à 20:50:29  profilanswer
 

j'ai un pb pr lancer le Thread :

Code :
  1. AfxBeginThread(MyThread,pParam,INFINITE,0,0,NULL);


voici mon erreur :
C:\Travail\afficheImage\afficheImageDlg.cpp(207) : error C2665: 'AfxBeginThread' : none of the 2 overloads can convert parameter 1 from type 'unsigned int (void *)'
Ce que je comprend pas, c'est que le thread doit etre déclaré en tant que uint, comme le montre l'exemple de la MSDN.
 
Pkoi ce pb ?

n°638069
blackgodde​ss
vive le troll !
Posté le 10-02-2004 à 21:17:20  profilanswer
 

attention au prototype de la fonction passé en paramètre


---------------
-( BlackGoddess )-
n°638088
SquiZZ
Posté le 10-02-2004 à 21:31:13  profilanswer
 

MyThread doit être 'static'

n°638151
lecoyote
Posté le 10-02-2004 à 22:01:46  profilanswer
 

vé essayer, merci ;)

n°638244
lecoyote
Posté le 10-02-2004 à 23:02:21  profilanswer
 

un autre pb se pose :
mon thread avait pour mission d'afficher une image dans la fenetre, le pb, c que je px pas initialiser un ptr "this" dans une fct static :
 

Code :
  1. UINT CAfficheImageDlg::MonThread(LPVOID pParam)
  2. {
  3.     CAfficheImageDlg* pObject = (CAfficheImageDlg*)pParam;
  4.     if (pObject == NULL)
  5.  return 1;   // if pObject is not valid
  6.     CPaintDC dc(this); //   "this" -> error C2671: 'MonThread' : static member functions do not have 'this' pointers
  7.     (...) // mon traitement
  8.     return 0;   // thread completed successfully
  9. }
  10. void CAfficheImageDlg::OnGetImage()
  11. {
  12. LPVOID pParam;
  13. //création d'un Thread
  14. AfxBeginThread(MonThread,pParam,INFINITE,0,0,NULL);
  15. }

mood
Publicité
Posté le 10-02-2004 à 23:02:21  profilanswer
 

n°638248
SquiZZ
Posté le 10-02-2004 à 23:08:38  profilanswer
 

Code :
  1. AfxBeginThread(MonThread, this ....


 
 

Code :
  1. UINT CAfficheImageDlg::MonThread(LPVOID pParam)
  2. {
  3.   CAfficheImageDlg* lThis= (CAfficheImageDlg*)pParam;
  4.   CPaintDC dc(lThis);
  5.   // ...
  6. }


Message édité par SquiZZ le 10-02-2004 à 23:21:38
n°638847
lecoyote
Posté le 11-02-2004 à 13:18:52  profilanswer
 

ok, ca marche seulement, lors de l'éxécution, j'ai un message d'erreur du style "Debug assertion failed!", et si je fé ignorer, ... ca marche...une sol. ?

n°639427
SquiZZ
Posté le 11-02-2004 à 20:28:04  profilanswer
 

et on est censés deviner où se produit l'assert ?

n°639940
lecoyote
Posté le 12-02-2004 à 09:31:25  profilanswer
 

désolé :s
Il se produit lors de la création du Thread et son éxécution, en faisant "gnoré", il s'éxécute normalement...
 
J'avais pensé rajouter un petit #pragma en en-tete, est-ce qu'il pourrait gérer ce genre d'erreur ?
Pour ce qui est du message d'erreur, c'est une erreur tt a fait banale...

n°643871
lecoyote
Posté le 16-02-2004 à 14:25:07  profilanswer
 

.


Message édité par lecoyote le 16-02-2004 à 14:25:39

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  création d'un Thread sous MFC

 

Sujets relatifs
problème d'antislash à la création d'un fichier via un fichier php[C++] position curseur souris et MFC
différence entre MFC et ATLCréation d'une playlist, quel technique employé ?
[MFC] Chargement et affichage d'un Bitmap dans une fenêtre dimensionée[C++] Classe Thread (ca marche)
[Perl] Création d'un script CGI quels modules utiliser?[PHP] Problème de cookie [création inside]
Socket TCP et Thread...[C++] Threading --> PB de creation de thread (MFC)
Plus de sujets relatifs à : création d'un Thread sous MFC


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR