Bonjour,
j'ai un soucis pour accéder à mon application vb.net qui utilise une base oracle !
Ce code fonctionnait très bien comme ceci sur le PC du lycée mais chez moi cela ne fonctionne pas.
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 Imports System.Data Imports Oracle.DataAccess.Client ' ODP.NET Oracle managed provider Imports Oracle.DataAccess.Server Imports ORAOLEDBLib Imports Oracle.DataAccess.Types Public Class Gestion_notes Public oradb As String = "Data Source=127.0.0.1;User Id=gestionMatiere;Password=gestionMatiere;" Public conn As New OracleConnection(oradb) Public Sub Gestion_notes_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try conn.Open() 'exemple de requete sql Dim sql As String = "SELECT * FROM utilisateur" Dim cmd As New OracleCommand(sql, conn) 'cmd.CommandType = CommandType.Text Dim dr As OracleDataReader = cmd.ExecuteReader() 'dr.Read() 'Label1.Text = dr.Item("dname") ' lecture de la colonne (via le nom de colonne) 'Label1.Text = dr.Item(0) ' lecture de la première colonne (via l'indice) 'Label1.Text = dr.GetString(0) ' lecture de la première colonne (via l'indice) Catch ex As Exception MessageBox.Show(ex.Message.ToString()) End Try End Sub
Le message d'erreur :
Ce message arrive avant le lancement du form, form qui n'apparaît pas. Pas de numéros de ligne, rien.L'exception InvalidOperationException n'a pas été gérée. La référence d'objet n'est pas définie à une instance d'un objet.
Je n'ai pas plus d'infos. Apparemment c'est un problème redondant mais je n'ai pas trouvé de solution.
Je ne met que ce bout de code puisque l'erreur apparaît au lancement du programme, donc dans le load je suppose.
Le stacktrace :
Et l'espion express me met que InnerException est à nothing quand je déclare la connexion dans le sub...à gestionMatiereEleve.My.MyProject.MyForms.Create__Instance__[T](T Instance) dans 17d14f5c-a337-4978-8281-53493378c1071.vb:ligne 190
à gestionMatiereEleve.My.MyProject.MyForms.get_Gestion_notes()
à gestionMatiereEleve.My.MyApplication.OnCreateMainForm() dans K:\AP\AP 5 - Gestion notes Oracle\gestionMatiereEleve\My Project\Application.Designer.vb:ligne 35
à Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
à Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
à Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)
à gestionMatiereEleve.My.MyApplication.Main(String[] Args) dans 17d14f5c-a337-4978-8281-53493378c1071.vb:ligne 81
à System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
à Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
à System.Threading.ThreadHelper.ThreadStart()
Si vous avez des idées,
Merci !
PS pour les modos : ne déplacez pas mon sujet, il est déjà ouvert dans la section vb.net, on m'a conseillé de l'ouvrir ici également chez les pros d'Oracle !
Partager