Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo Leute,

habe ein riesieges Problem mit meinem Downloadserver, welcher als Dienst bei

mit läuft! Wenn aus der DB - Tabelle gelesen wird....:

CRecordset Record(....)

try

{

Record.Open(AFX_DB_USE_DEFAULT_TYPE, "SELECT * FROM Hilfetest WHERE ......." ,CRecordset::none);

}

catch(CDBException dbex)

{

dbex.ReportError();

return -1;

}

Wenn die Tabelle Hilfetest in der DB exestiert ist alles ok, sobald diese Tabelle

nicht da ist --> stürzt der Server ab und meldet mir die Fehlermeldung :

"unknown software exception" 0x80000003 and der Stelle 0x004483c3 :(

hat einer mal eine Idee wie ich diese vielleicht noch abfangen kann?? :confused:

freue mich über jeden Vorschlag :rolleyes:

Geschrieben

Diese Fehlermeldung sagt dir: „Mindestens ein Argument ist ungültig.“

Ist ja auch kein wunder, denn du versuchst ein Recordset auf eine Tabelle zu öffnen die nicht existiert, es muss schief laufen, was hast du denn sonst erwartet ??

Geschrieben

Danke Bigpoint für dein informatives Statement. Hat mir bei meinem Problem sehr geholfen. Ich bin bei meinem Problem schon bewusst, die Frage war wie kann ich es verhindern wenn mal eine Tabelle nicht da ist das es dann nicht zum Absturz kommt!!!

Und nicht kann mir mal ein Klug*******er ein Zitat von Albert Einstein schreiben!!

Geschrieben

Hast du dich vielleicht verlesen?

http://msdn.microsoft.com/library/en-us/vclib/html/_mfc_crecordset.3a3a.open.asp

Da steht unter Exceptions:

This method can throw exceptions of type CDBException* and CMemoryException*.

Der Stern ist insofern wichtig, als CDBException ein anderer Typ ist als CDBException*. Das eine ist die Klasse selbst, das andere ist ein Zeiger auf die Klasse. Und bei catch muss der Typ passen.

Geschrieben
Und nicht kann mir mal ein Klug*******er ein Zitat von Albert Einstein schreiben!!

Also erst mal Stopp. Beleidigen sollen wir uns hier nicht,

die Frage war wie kann ich es verhindern wenn mal eine Tabelle nicht da ist das es dann nicht zum Absturz kommt!!!

und auf Deine Frage kann ich Dir nur Antworten

richtig exceptions behandeln. ;)

Du kannst mit m_pErrorInfo dir den Error anzeigen lassen, auf jeden fall auf deine Stelle wurde ich auch den Recordset - Objekt löschen sobald du im catch landest.

Gast
Dieses Thema wurde nun für weitere Antworten gesperrt.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...