Bonjour Développeur,

j'arrive aujourd'hui avec un problème qui persiste :

En quelques mots: je dois réaliser un applicatif de gestion de Football en Salle, lorsque je souhaite ouvrir un OpenFileDialog un message de type "L'exception AccessViolationException n'a pas été gérée" et ce à chaque fois que j'essaie de lancer le dialogue.

J'ai pensé a recommencer mon programme car rien n'y fait ca plante tout le temps

Et lorsque je reconstitue fonction par fonction le programme mon erreurs arrive au moment d'un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
conteneurecabc = requeterecabc.ExecuteReader()
Je vous fournit la fonction qui contient ce code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
    Public Sub RefreshReferee(Optional ByVal typetri As Integer = 0)
        ListArbitre.Clear()
        Dim requete As New OleDb.OleDbCommand
        Dim conteneur As OleDb.OleDbDataReader
        Try
            Main.DBHermes.Open()
            requete.Connection = Main.DBHermes
            If typetri = 1 Then
                requete.CommandText = "SELECT * FROM Arbitres ORDER BY Nom;"
            Else
                requete.CommandText = "SELECT * FROM Arbitres;"
            End If
            conteneur = requete.ExecuteReader()
            While (conteneur.Read)
                Dim NewArbitre As New Arbitre
                NewArbitre.Numero = conteneur("Ref")
                NewArbitre.Nom = conteneur("Nom")
                NewArbitre.Prenom = conteneur("Prenom")
                NewArbitre.Bloc1 = Integer.Parse(conteneur("Bloc").ToString.Substring(0, 2))
                NewArbitre.Bloc2 = Integer.Parse(conteneur("Bloc").ToString.Substring(3, 2))
                NewArbitre.Categorie = conteneur("Cat")
                'Recusation de l'arbitre
                Dim requetereca As New OleDb.OleDbCommand
                Dim conteneureca As OleDb.OleDbDataReader
                Try
                    requetereca.Connection = Main.DBHermes
                    requetereca.CommandText = "SELECT * FROM RecusationsArbitres WHERE Arbitres='" + NewArbitre.Numero + "';"
                    conteneureca = requetereca.ExecuteReader()
                    While (conteneureca.Read)
                        NewArbitre.AddRecusationClub(conteneureca("Clubs"))
                    End While
                Catch Ex As Exception
                    MsgBox(Ex.Message)
                End Try
                Dim requeterecb As New OleDb.OleDbCommand
                Dim conteneurecb As OleDb.OleDbDataReader
                Try
                    requeterecb.Connection = Main.DBHermes
                    requeterecb.CommandText = "SELECT * FROM Conges WHERE RefArb='" + NewArbitre.Numero + "';"
                    conteneurecb = requeterecb.ExecuteReader()
                    While (conteneurecb.Read)
                        NewArbitre.AadConges(Date.Parse(conteneurecb("DateCong")))
                    End While
                Catch Ex As Exception
                    MsgBox(Ex.Message)
                End Try
                Dim requetereur As New OleDb.OleDbCommand
                Dim conteneurreur As OleDb.OleDbDataReader
                Try
                    requetereur.Connection = Main.DBHermes
                    requetereur.CommandText = "SELECT Suffixe FROM RecuSalle INNER JOIN Salles ON RecuSalle.Salles = Salles.Id WHERE Arbitre=""" & NewArbitre.Numero & """;"
                    conteneurreur = requetereur.ExecuteReader()
                    While (conteneurreur.Read)
                        NewArbitre.AddRecuSalle(conteneurreur("Suffixe"))
                    End While
                Catch ex As Exception
                    MsgBox(ex.Message)
                End Try
                If IsDBNull(conteneur("freqsemaine")) Then
                    NewArbitre.ParSemaine = 0
                Else
                    NewArbitre.ParSemaine = Integer.Parse(conteneur("freqsemaine"))
                End If
 
                Dim requeterecab As New OleDb.OleDbCommand
                Dim conteneurecab As OleDb.OleDbDataReader
                Try
                    requeterecab.Connection = Main.DBHermes
                    requeterecab.CommandText = "SELECT * FROM Division WHERE Arbitres='" + NewArbitre.Numero + "';"
                    conteneurecab = requeterecab.ExecuteReader()
                    While (conteneurecab.Read)
                        NewArbitre.AddSerie(conteneurecab("Niveau"), conteneurecab("Categorie"), conteneurecab("Division"), conteneurecab("Serie"))
                    End While
                Catch Ex As Exception
                    MsgBox(Ex.Message)
                End Try
                Dim requeterecabc As New OleDb.OleDbCommand
                Dim conteneurecabc As OleDb.OleDbDataReader
                Try
                    requeterecabc.Connection = Main.DBHermes
                    requeterecabc.CommandText = "SELECT * FROM Affiliations WHERE Arbitres='" + NewArbitre.Numero + "';"
                    conteneurecabc = requeterecabc.ExecuteReader()
                    While (conteneurecabc.Read)
                        NewArbitre.AddAffiliation(conteneurecabc("Clubs"))
                    End While
                Catch Ex As Exception
                    MsgBox(Ex.Message)
                End Try
                ListArbitre.Add(NewArbitre)
            End While
            Main.DBHermes.Close()
        Catch Ex As Exception
            MsgBox(Ex.Message)
            Main.DBHermes.Close()
        End Try
    End Sub
lorsque je met les lignes 82, 83, 84 et 85 le dialogue s'affiche sinon je retire la 82 des commentaires il me met l'exception et si en plus je retire la 83 c'est le vshot32.exe (ou quelque chose dans le genre) qui s'arrête de façon inexpliquée.

J'espère que des professionnels de l'informatique de programmation comme vous pourra m'aider.

Je vous remercie d'avance d'avoir prêter attention au sujet

Adrien alias DiGui