Probleme fonction WaitForSingleObject lors de l'execution
thesbr
Messages postés5Date d'inscriptionjeudi 5 août 2004StatutMembreDernière intervention26 août 2004
-
23 août 2004 à 16:19
thesbr
Messages postés5Date d'inscriptionjeudi 5 août 2004StatutMembreDernière intervention26 août 2004
-
25 août 2004 à 13:20
bonjour a tous.
j'ai un petit soucis de comprehension. je possede VisualBasic 6 sous win2000.
je debut sous vb et je souhaite faire du MultiThread.
j'utilise les fonctions CreateThread(...) et WaitForSingleObject(...) qui fonctionnent bien.
MAIS, la fonction WaitForSingleObject(...) ne fonctionne qu'en mode 'debug'. Le code Executable genere (Natif ou P-code) entraine une erreur d'execution.
voici une partie du code de la routine du thread:
Do While loc_true
loc_dw = WaitForSingleObject(loc_ev, 200)
If loc_dw = WAIT_OBJECT_0 Then
loc_true = False
Else
If loc_dw = WAIT_TIMEOUT Then
loc_str = String(64, vbNullChar)
loc_ret = DLL_ReadDATA(loc_str)
If loc_ret = 1 Then
' print loc_str
Else
(...)
End If
End If
End If
Loop
la variable loc_ev correspondant a l'handle de terminaison.
la fonction DLL_ReadDATA(...) est une fonction importee d'une DLL
ecrite avec VC++.
L'erreur generee est je pense un depassement de tampon, mais
il est effectue avant l'appel de WaitForSingleObject(...).
merci pour votre aide.
A voir également:
Probleme fonction WaitForSingleObject lors de l'execution
thesbr
Messages postés5Date d'inscriptionjeudi 5 août 2004StatutMembreDernière intervention26 août 2004 23 août 2004 à 16:26
rebonjour,
un test m'a permis de verifier que l'executable compile en p-code
'plante' apres l'appel a la fonction WaitForSingleObject(...), tandis que le code compile en Natif 'plante' durant la fonction.
Quelles sont les differences entre les codes compiles: p-code et natif?