kann jemand auf die Schnelle mit dieser Fehlermeldung etwas anfangen? Das Programm läuft an der Stelle durch eine Do...while-Schleife. Lt. Anwender läuft die Kiste auch eine Zeit lang und bringt dann irgendwann die Fehlermeldung.
------------------------------------------------------------------------------
FEHLERPROTOKOLL von "D:\Programme\KAP\KAP.EXE" Datum: 29.04.2009 12:54:14
Xbase++ Version : Xbase++ (R) Version 1.90.331
Betriebssystem : Windows XP 05.01 Build 02600 Service Pack 2
------------------------------------------------------------------------------
oError:args :
-> VALTYPE: N VALUE: 1
oError:canDefault : J
oError:canRetry : N
oError:canSubstitute: N
oError:cargo : NIL
oError:description : Betriebsystemfehler
oError:filename :
oError:genCode : 40
oError:operation : DbSkip
oError:osCode : 1
oError:severity : 2
oError:subCode : 4
oError:subSystem : BASE
oError:thread : 1
oError:tries : 0
------------------------------------------------------------------------------
CALLSTACK:
------------------------------------------------------------------------------
Aufgerufen von AUSWERTUNG(2114)
Aufgerufen von (B)KDS(1600)
Aufgerufen von MAIN(1043)
Zusatzfrage: Was bedeutet eigentlich das (B) vor der zweiten "Aufgerufen von"-Zeile? Steht bestimmt irgendwo, aber ich müsste suchen. Eigentlich traurig, dass ich das immer noch nicht weiß.
Moin Christof,
das (B) bedeutet (glaube ich), dass die Funktion aus einem Codeblock heraus aufgerufen wurde.
Zum Fehler: Kann es sein, dass die Datenbank nicht (mehr) geöffnet ist?
Oder liegt sie auf einem anderen Rechner und die Netzverbindung ist weg (Netzwerkkarte abgeschaltet, um Strom zu sparen (eine Einstellung im Gerätemanager))?
Programm und Daten liegen in einem Verzeichnis. Hier ist ja LW D: angegeben. Das dürfte ein lokales Laufwerk sein. Der Durchlauf dauert auch nicht sehr lange. Nur so 30 sek. Da kann ja auch kein Zeitlimit greifen. Ich wüsste auch nicht, dass irgendwo eins eingebaut wäre.
Ich muss beim Kunden nochmal genau nachfragen, ob die Auswertung wirklich anläuft oder ob sie gleich beim Start schon in den Fehler läuft.
Vielleicht hilft es auch, mal alle Indexdateien zu löschen.
Danke einstweilen. Wenn ich nicht weiterkomme, melde ich mich nochmal.
0004 - [BASE] - ???
Associated with: "40:Operating system error"
- With OS Error: "1:Incorrect function"
Caused by: "DbSeek()" and "OrdListAdd()"
- With OS Error: "2:The system cannot find the file specified."
Caused by: "OrdListAdd()"
- With OS Error: "6:Invalid Handle"
Caused by: (???)
- With OS Error: "59:An unexpected network error occurred."
Caused by: "DbZap()"
Betriebssystemfehler 1 - unzulässige Funktion - ist meiner Beobachtung nach an die Stelle von "Indexdatei korrupt oder beschädigt" getreten. In der Regel sollte ein Neuaufbau der Indexdatei Abhilfe schaffen, aber es lohnt sich, die Datei mal zu prüfen, indem man IndexKey() und ähnliche Informationen abfragt oder die dazugehörige Tabelle mit geöffnetem Index schrittweise durchskippt.
Danke für die Hinweise.
@Manfred: Merci, die Tabelle hilft bei einigen Betriebssystemen weiter. Hier leider nicht ganz.
@Rolf: Zu groß dürfte die Datei nicht sein.
@Tom: Den Tipp mit den Indexdateien habe ich mal an den Kunden weiter gegeben. Ich arbeite mit CDX-Dateien. Er löscht die CDX-Dateien am Montag, damit sie wieder neu aufgebaut werden. (Super, ich reiß' mir hier ein Bein aus und dann hat's Zeit bis Montag).
Also, nochmals "Danke" und feiert schön den 1.Mai!