DoEvents() et Visual Studuio 2008

Résolu
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 - 30 sept. 2008 à 09:14
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 - 27 oct. 2008 à 10:28
Salut à tous,

venant d'acquérir VS 2008, j'ai voulu reprendre une ancienne appli développée sous VS 2005 et je me suis rendu compte que la fonction DoEvents() de l'objet Application n'existe plus... Malgré quelques recherches, je n'ai pas trouvé son équivalent.

Est-ce que l'un d'entre vous pourrait m'aiguiller sur le sujet?

Merci.

<hr />
@+  

14 réponses

cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
30 sept. 2008 à 10:57
As-tu de référencé dans ton projet l'assembly System.Windows.Forms ?
Si non, clic droit sur ton projet -> ajouter référence -> onglet .net  et sélectionner System.Windows.Forms
Si oui essai ceci System.Windows.Forms.Application.DoEvents()

++
3
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
30 sept. 2008 à 09:24
Bonjour,
La méthode DoEvents de la classe Application existe toujours !
Application.DoEvents()

++
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
30 sept. 2008 à 09:29
C'est vrai que je n'ai pas de message d'erreur à la compilation et mon projet se génère correctement, mais à l'exécution, ça plante sur le Application.DoEvents() avec les message suivant :

"Le membre public 'DoEvents' du type 'ApplicationClass' est introuvable."

Il me manquerait quelquechose?

<hr />
@+  
0
NHenry Messages postés 15114 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 4 mai 2024 159
30 sept. 2008 à 10:10
Bonjour,

Tu as mis Option Strict à On ?

http://nhen0039.chez-alice.fr/index.php
0

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

Posez votre question
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
30 sept. 2008 à 11:06
NHenry -> Non et jamais d'ailleurs, je pense qu'en .net ça n'est utile de le préciser.

Willi -> Oui l'assembly est bien référencée.

Bizarre cette erreur...

<hr />
@+  
0
NHenry Messages postés 15114 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 4 mai 2024 159
30 sept. 2008 à 11:54
Bonjour,

Définit OptionStrict à On, il te signalera l'erreur si c'e'st un membre inconnu.
En .NET, toujours vérifier que Option Explicit et Option Strict sont à On, c'est une question de logique de developpement. (cela peut être différent sur un seul module de l'appli si besoin, mais cela doit rester une exception).

http://nhen0039.chez-alice.fr/index.php
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
30 sept. 2008 à 12:54
En effet, je viens de vérifier, et par défaut OptionStrict est sur "personnalisé". Je viens de le modifier à On et je me retrouve avec quelques erreurs.

Je regarde ça de plus prés...

<hr />
@+  
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
30 sept. 2008 à 16:08
Avec ce paramétrage,  Application.DoEvents() me renvoie une erreur à la génération :

Option Strict On rejette toute liaison tardive

Help....

<hr />
@+  
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
30 sept. 2008 à 16:49
Aurais-tu redéfinis le nom Application ou DoEvents quelque part dans une classe ?
0
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
30 sept. 2008 à 16:57
Le message de liaison tardive n'a pas de rapport avec Application.DoEvents().
Essai de nettoyer ta solution (menu générer -> Nettoyer la solution) et de la regénérer complètement avec l'option Strict Off.
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
30 sept. 2008 à 17:11
[auteur/KRISTOFKODER/1121413.aspx
]Kritof_Koder -> non, je n'ai redéfini ni Application ni DoEvents()

Willi -> j'ai fait tout comme tu m'as dit, mais le résultat est le même

<hr />
@+  
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
30 sept. 2008 à 19:19
Il doit bien indiquer sur quel ligne se pose le pb de la liaison tardive ! Il est vrai que cela semble peu probable que ce soit la ligne avec un Applicaiton DoEvents !
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
27 oct. 2008 à 09:50
J'ai reparcouru vos messages, et j'étais passsé à côté de ça : System.Windows.Forms.Application.DoEvents()

qui du coup fonctionne trés bien!!

Bizarre cependant  que Application.DoEvents() ne fonctionne pas puisque l'assembly System.Windows.Form a bien été ajoutée.

<hr />
@+  
0
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
27 oct. 2008 à 10:28
Bonjour,
Si Application.DoEvents() ne fonctionnait pas soit je vois 2 possibilités:
1) Tu n'avais pas ajouter la directive "Imports System.Windows.Forms" en haut de ton code.
2) Ont peut supposer que tu as une classe/structure/module nommer Application alors il cherche une méthode DoEvents dans celle-ci et non dans la bonne classe.

Voila mes idées...
++
0
Rejoignez-nous