Fedon Geschrieben 26. September 2011 Geschrieben 26. September 2011 Hallo ihr Fachgenies Falls es einen Thread hierzu gibt (was ich stark annehme, habe ihn aber leider nicht finden können..) dann bitte einfach kurz bescheid geben dann schau ich mir das dort an. Zur Frage: Habe nun ein Programm fertig geschrieben (Abfrageprogramm - Accessdatenbank dahinter). Nun muss ich dieses auf einem etwas älteren Rechner zum laufen bringen. .Net 4.0 hab ich bereits installiert, die Datenbank ist auf dem PC (vorerst) lokal abgelegt (soll später auf Netzlaufwerk). Nun startet mein Programm über die .exe einwandfrei, nur nach Eingabe meines zu suchenden strings wird meine try-catch-exception ausgelöst. Für mich sieht das so aus als ob er die Verbindung zur Datenbank nicht griegt (OLEDB). Hat jmd. eine Idee für mich? Gibts bestimmte "Dinge" die auf dem Rechner vorhanden sein müssen? Vielen Danke, Fedon Zitieren
Thelvan Geschrieben 26. September 2011 Geschrieben 26. September 2011 Fehlernummer oder genaue Exception bitte Zitieren
Fedon Geschrieben 26. September 2011 Autor Geschrieben 26. September 2011 gibts nicht. Wie gesagt, ich hab ne Try-Catch-Exception eingebaut die erscheint falls was mit der Abfrage nicht passt. Ich geb eine PLZ ein und es sollte die Datensätze dafür angezeigt werden. Funktioniert das nicht (bedingt durch z.B. falscheingabe), wird ne MessageBox ausgegeben. Mehr ist leider nicht zu sehn. Zitieren
Gurki Geschrieben 26. September 2011 Geschrieben 26. September 2011 Ist Access auf dem Rechner installiert? Mir war so, dass man das auch musste bei der Datenbank (?) Zitieren
SilentDemise Geschrieben 26. September 2011 Geschrieben 26. September 2011 (bearbeitet) dann schreib in deinem catch block die inner exception in ein log file. Übrigens gibt es für diese Anwendungsfälle SQLite / MSSQL CE Bearbeitet 26. September 2011 von SilentDemise Zitieren
Thelvan Geschrieben 26. September 2011 Geschrieben 26. September 2011 Ist Access auf dem Rechner installiert? Mir war so, dass man das auch musste bei der Datenbank (?) Stimmt, OS und SP wären interessant, seit XP SP1 brauch man das nicht mehr. Zitieren
Gateway_man Geschrieben 26. September 2011 Geschrieben 26. September 2011 Ist Access auf dem Rechner installiert? Mir war so, dass man das auch musste bei der Datenbank (?) Je nadem wie er drauf zugreift. Wenn er über odbc zugreift muss lediglich der Treiber drinstehn. @TE Die Message der Exception ist leer? Klingt sehr ungewöhnlich. Du weißt schon wie du den text einer Exception erhälst? Try{ ....... }catch(Exception ex){ MessageBox.Show(ex.Message); } Zitieren
Thelvan Geschrieben 26. September 2011 Geschrieben 26. September 2011 Je nadem wie er drauf zugreift. Wenn er über odbc zugreift muss lediglich der Treiber drinstehn. oledb steht oben. Zitieren
lilith2k3 Geschrieben 26. September 2011 Geschrieben 26. September 2011 Wer derartig sinnfrei programmiert, braucht auch keine Exceptions mehr. Eigentlich sollte aus Deinem Code der Fehler einzugrenzen sein. Wenn Du keine Fehler behandeln willst oder kannst, warum dann überhaupt try-catch? Dann würde Dir wenigstens das Betriebssystem sagen, wo es brennt... Zitieren
Sacaldur Geschrieben 27. September 2011 Geschrieben 27. September 2011 ich denke, er hat nicht alle möglichen Fehler (Exceptions) in seiner Fehlerbehandlung berücksichtigt, da er wohl nicht von einem Fehler beim Verbindungsaufbau ausgegangen ist (sondern nur von Fehlern bei der Verarbeitung der Abfrage) wie schon geschrieben solltest du erstmal herausfinden, um welche Exception es sich handelt (dazu den Quelltext einfach ein wenig anpassen) bzw. was diese als Message beinhaltet Zitieren
.NETter Geschrieben 27. September 2011 Geschrieben 27. September 2011 Falls kein Access in der entsprechenden oder kompatiblen Version installiert ist benötigt man eine Access Runtime auf dem Zielrechner. Das kann man auch mittels Setup-Projekt gleich mit ausliefern und installieren. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.