Erreur de référence

OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 - 1 sept. 2007 à 12:21
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 - 2 sept. 2007 à 20:11
Bonjour j'ai créer un projet classer bibliothèque avec VS.Net 2008 Express.
Je rajoute une AboutBox et dans la procédure principale de ma dll je met "AboutBox.ShowDialog()" Et ca me met comme erreur "Error    1    Reference to a non-shared member requires an object reference"

Alors je sais pas quoi faire, c'est la premiere fois que ca me le fait et uniquement dans une bibliotheque de classe.

Comment y remédier ?

Redman

14 réponses

Utilisateur anonyme
1 sept. 2007 à 14:15
Salut,

Si tu  crée pas d'instance de ton AboutBox, c'est sur qu'il va pas vouloir.
Dim AbB as New AboutBox();






__________
Kenji

(


Nouveau forum VBA/Office
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
1 sept. 2007 à 14:16
Oui mais d'habitude depuis 2005 on peut dirrectement faire AboutBox afficher la référence et non l'instance et pourquoi cette fois ca marche pas alors que je fait toujours la meme chose.

Redman
0
Utilisateur anonyme
1 sept. 2007 à 14:21
Première fois que j'entends ça. Il à toujours fallu instancifier avant d'utiliser.
Si ca "marche" avec vb2005, c'est qu'il t'as instancifier ca dans un designer "MyProject" de son pleins gré.






__________
Kenji

(


Nouveau forum VBA/Office
0
PurBonheur Messages postés 66 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 7 octobre 2007 1
1 sept. 2007 à 14:27
Salut,  sois tu essai d'appeller ta procedure alors qu'elle est une méthode d'instance, dans ce cas tu créer une instance de ta classe, puis tu appel la procédure via cette instance : (ou alors tu déclare ta procédure en static)

dim instance as new NomDeTaClasse
instance.nomDeTaProcedurePrincipale()

sois dans ta procédure, ton 'aboutbox' n'est pas instancier :

Dim instance As New AboutBox1
instance.ShowDialog()

A quelle ligne l'erreure se rapport-elle ?

A plus.
0

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

Posez votre question
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
1 sept. 2007 à 14:28
Vous n'avez toujours pas compris ? En VB.Net 2005 on est pas obliger de créer une instance mais on peut directement considérer la référence comme instance, et la c'est la premiere fois que ca marche pas
coment y remédier ?

Redman
0
Utilisateur anonyme
1 sept. 2007 à 14:33
Hé bien tu fait comme le faisait le designer de vb2005 : Tu crée une classe static dans laquele tu instancifie ton AboutBox.







__________
Kenji

(


Nouveau forum VBA/Office
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
1 sept. 2007 à 14:36
Vous avez toujours rien compris, tant pis.

Redman
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
1 sept. 2007 à 15:25
Et ta référence c'est bien AboutBox ? ça serait pas par hasard AboutBox1 ?

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
1 sept. 2007 à 15:29
Oui c'est bien AboutBox.

Redman
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
2 sept. 2007 à 17:42
Je confirme avoir entendu dire qu'en VB 2005 on n'était pas obliger d'instancier les formulaires, exactement comme en VB6 -j'ai lu cela sur une page de chez Microsoft, je sais plus ou exactement-! Par contre, je ne l'ai jamais testé perso. Mais bon, de toute façon, c'est à mon avis une très mauvaise idée que de procéder ainsi. Et si la fonctionnalité à été enlevé de VB 2008, cela ne me parait pas un mal !
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
2 sept. 2007 à 17:44
La fonctionnalité n'a pas été enlevée en VB 2008 juste que qnad une bibliotheque cllasse ca marche pas alors que dans un projet Windows Forms ca marche.

Redman
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
2 sept. 2007 à 18:52
OK ! De toute façon, je persiste à penser que c'et une mauvaise idée que de faire cela.
0
Utilisateur anonyme
2 sept. 2007 à 20:09
J'ai précédament expliqué le pourquoi du parsque. C'est le designer qui s'en charge.









__________
Kenji

(


Nouveau forum VBA/Office
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
2 sept. 2007 à 20:11
Pour l'instant : personne n'a vraiment répondu.

Redman
0
Rejoignez-nous