Procedure lancée par une otre procédure ???

TheBOdybOarDMaN Messages postés 54 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 24 octobre 2006 - 27 déc. 2004 à 23:02
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 - 29 déc. 2004 à 14:23
SAlut les Programmeur ou programmateur je sais pas comment on dit :)

je sens que vous aller me dire " WAAA le noob il sait même pas sa pfff il sert a rien laisse tomber la prog c mort t'est trop con"
Mais bon j'ose quand même

Comment lancer une procédure a partir d'une autre procédure du même programme ??

Merci d'avance les "bons" (qui aides les faibles, les autre ils servent a rien il font sa que pour eux c'est nul)

30 réponses

TheBOdybOarDMaN Messages postés 54 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 24 octobre 2006
28 déc. 2004 à 12:38
allé expliquer moi svp!!!

la procédure workbegin est apellée puis la work puis enfiin la endwork qui sont ttoute les deux apellé lé une aprés les autre

enfin vous avez vu dans le lien au dessus
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
28 déc. 2004 à 14:19
Donc je ne vois toujours pas pourquoi tu veux appeller manuellement la procedure IdSMTP1Word !
Qu'est-ce qui te pose problème dans le code que tu nous as passé ? Ou est ce fameux "appel de procedure" ? Je ne le vois pas...

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
28 déc. 2004 à 14:20
Dsl : IdSMTP1Work

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
0
TheBOdybOarDMaN Messages postés 54 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 24 octobre 2006
28 déc. 2004 à 19:53
t'as vue :
la fin de la procedure du buttonclick appelle la procedure Workbegin puis cette procedure appelle la procedure suivante qui appellera Workend
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
28 déc. 2004 à 23:02
Il ne faut pas appeler la procédure WorkBegin ! Ni les autres d'ailleurs ! Elles s'appelent automatiquement !

Il faut simplement faire ceci à la fin de la procedure buttonclick dont tu parles :
IdSMTP1.Send(IdMessage1);
à la place de
Form4.IdSMTP1.BeginWork(TWorkMode(wmWrite));

Il ne faut pas mettre IdSMTP1.Send(IdMessage1); dans la procedure IdSMTP1Work !
Il faut simplement mettre dans cette procedure l'avancement de la barre de progression !

Regarde plus profondément ICI ! et enlève tous les appels aux procédures WorkBegin, Work, et EndWork...

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
0
TheBOdybOarDMaN Messages postés 54 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 24 octobre 2006
29 déc. 2004 à 13:12
salut!
donc voila je l'ai refait comme tu m'avais dit
tu peu aller voir la source ici
vas y stp car ca ne marche toujours pas
0
TheBOdybOarDMaN Messages postés 54 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 24 octobre 2006
29 déc. 2004 à 13:14
j'ai l'impression en faite que il ne detecte pas que l'envoie du message est le 'Work' donc il ne lance pas cette procédure ni les autres.
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
29 déc. 2004 à 14:09
Enlève les conditions
If AWorkMode = wmWrite then ...

Dans ces procédures, ça devrait marcher

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
29 déc. 2004 à 14:21
En fait, le problème ne vient pas des procedures non appelées, cela vient du fait que la valeur 'AWorkCountMax' est toujours nule (=0) !
Donc lors de l'attribution de la valeur
Form6.Gauge1.MaxValue:=AWorkCountMax;
la valeur maximum de la gauge est zéro, donc on ne peut pas voir la progression, même avec ce code :
Form6.Gauge1.Progress:=Form6.Gauge1.MaxValue;


Essaie en modifiant le caption d'un label (WorkBegin : 'commence' ; Work : 'en cours' ; WorkEnd : 'fini') et tu verras une différence. Cela montre bien que les procédures sont appelées...

Le problème vient donc de AWorkCountMax...

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
29 déc. 2004 à 14:23
Autre info : l'incrémentation de AWorkCount se fait pourtant bien (ça augmente).... Il y a un problème quelque part dans l'attribution de AWorkCountMax...

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
0
Rejoignez-nous