Fehler Satz-/Dateisperre fehlgeschlagen
Moderator: Moderatoren
Fehler Satz-/Dateisperre fehlgeschlagen
Wir haben seit einigen Jahren ein Warenwirtschaftsprogramm am laufen - und das soweit ganz zufriedenstellend.
Nur ab und zu bekommen wir eine ganz komische Fehlermeldung
Kann man diesen Fehler irgendwie abfangen?
Wodurch könnte er entsteht?
------------------------------------------------------------------------------
FEHLERPROTOKOLL von "F:\FAKT_Vista\FAKT_Vista.EXE" Datum: 23.08.2011 11:41:58
Xbase++ Version : Xbase++ (R) Version 1.90.331
Betriebssystem : Windows XP 05.01 Build 02600 Service Pack 2
------------------------------------------------------------------------------
oError:args :
-> VALTYPE: N VALUE: 29819
oError:canDefault : J
oError:canRetry : N
oError:canSubstitute: N
oError:cargo : NIL
oError:description : Satz-/Dateisperre fehlgeschlagen
oError:filename :
oError:genCode : 79,00
oError:operation : DbRUnlock
oError:osCode : 0,00
oError:severity : 2,00
oError:subCode : 8999,00
oError:subSystem : BASE
oError:thread : 4,00
oError:tries : 0,00
Herzlichen Dank für jegliche Hilfe,
Bernhard
Nur ab und zu bekommen wir eine ganz komische Fehlermeldung
Kann man diesen Fehler irgendwie abfangen?
Wodurch könnte er entsteht?
------------------------------------------------------------------------------
FEHLERPROTOKOLL von "F:\FAKT_Vista\FAKT_Vista.EXE" Datum: 23.08.2011 11:41:58
Xbase++ Version : Xbase++ (R) Version 1.90.331
Betriebssystem : Windows XP 05.01 Build 02600 Service Pack 2
------------------------------------------------------------------------------
oError:args :
-> VALTYPE: N VALUE: 29819
oError:canDefault : J
oError:canRetry : N
oError:canSubstitute: N
oError:cargo : NIL
oError:description : Satz-/Dateisperre fehlgeschlagen
oError:filename :
oError:genCode : 79,00
oError:operation : DbRUnlock
oError:osCode : 0,00
oError:severity : 2,00
oError:subCode : 8999,00
oError:subSystem : BASE
oError:thread : 4,00
oError:tries : 0,00
Herzlichen Dank für jegliche Hilfe,
Bernhard
- Manfred
- Foren-Administrator
- Beiträge: 21248
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 211 Mal
- Danksagung erhalten: 71 Mal
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Hallo Bernhard,
bitte etwas Code von der Stelle zeigen, damit man sieht, wie Du das Problem angehst. Es könnte ein Konflikt zwischen 2 Stationen sein.
bitte etwas Code von der Stelle zeigen, damit man sieht, wie Du das Problem angehst. Es könnte ein Konflikt zwischen 2 Stationen sein.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Hier die Zeilen wo sich der Fehler ereignet ( markiert mit ---->>>> )
Zum Umfeld
Im Netzwerk befinden sich 3 Rechner - diese laufen mit XP SP2
Server läuft mit Novell 6
IF dbSeek ( RTRIM ( ::aMain_Text_Lines[ii][1]) )
IF .NOT. DIVERS
dbRlock()
MENGE += 12
---->>>> dbRUnlock( RECNO())
ENDIF
ELSE
msgbox ( "eof()" )
ENDIF
Zum Umfeld
Im Netzwerk befinden sich 3 Rechner - diese laufen mit XP SP2
Server läuft mit Novell 6
IF dbSeek ( RTRIM ( ::aMain_Text_Lines[ii][1]) )
IF .NOT. DIVERS
dbRlock()
MENGE += 12
---->>>> dbRUnlock( RECNO())
ENDIF
ELSE
msgbox ( "eof()" )
ENDIF
Zuletzt geändert von BIK am Mi, 24. Aug 2011 9:06, insgesamt 1-mal geändert.
- AUGE_OHR
- Marvin
- Beiträge: 12913
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: Fehler Satz-/Dateisperre fehlgeschlagen
welche NW-Client verwendest du ? Turbo-FAT off ?BIK hat geschrieben:Im Netzwerk befinden sich 3 Rechner - diese laufen mit XP SP3
Server läuft mit Novell 6
gruss by OHR
Jimmy
Jimmy
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1931
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Hi
ich mache dies etwas anders
versuch es mal
ich mache dies etwas anders
Code: Alles auswählen
do while 123->(!rlock())
enddo
.... anweisung - 123->menge+=12
123->(Dbunlock())
- AUGE_OHR
- Marvin
- Beiträge: 12913
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: Fehler Satz-/Dateisperre fehlgeschlagen
du solltest "upgraden" auf die 1.9.355 SL1BIK hat geschrieben:Xbase++ Version : Xbase++ (R) Version 1.90.331
man sollte SP3 haben ...BIK hat geschrieben:Betriebssystem : Windows XP 05.01 Build 02600 Service Pack 2
wo kommen bei die "," ( Komma) her ?BIK hat geschrieben:Code: Alles auswählen
oError:args : -> VALTYPE: N VALUE: 29819 oError:canDefault : J oError:canRetry : N oError:canSubstitute: N oError:cargo : NIL oError:description : Satz-/Dateisperre fehlgeschlagen oError:filename : oError:genCode : 79,00 oError:operation : DbRUnlock oError:osCode : 0,00 oError:severity : 2,00 oError:subCode : 8999,00 oError:subSystem : BASE oError:thread : 4,00 oError:tries : 0,00
8999 - [BASE] - Multipurpose SubCode for most Database Errors ?oError:subCode : 8999
Associated with: "79:Record lock failed"
Caused by: "OrdListAdd()", "DbSkip()", "DbSeek()", "DbGoTop()", "DbAppend()"
p.s. SMB1 Problem
79 XPP_ERR_LOCK Record lock failedoError:genCode : 79
da es im Thread passiert ist vermutlich dein ALIAS() auch "leer". versuche maloError:thread : 4
Code: Alles auswählen
nRec := MyALIAS->RECNO()
IF MyALIAS->(DbRLock(nRec))
MyALIAS->MENGE += 12
// wenn man hier ein SLEEP braucht
// ist es meistens ein "CACHE" Problem
MyALIAS->(DbrUnLock(nRec))
// statt COMMIT
MyALIAS->(DbSkip(0))
ENDIF
gruss by OHR
Jimmy
Jimmy
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Danke für die Zahlreichen Tipps
@AUGE_OHR
XP haben wir heute mit SP3 versehen
Beim xBase Upgrade auf die 1.9.355 SL1 ist mein Boss nicht wirklich begeistert, da das System ja grundsätlich läuft - nur eben ab und zu der Fehler
da es im Thread passiert ist vermutlich dein ALIAS() auch "leer". versuche mal
Wie kommt eine "leerer" Alias zustande - wenn vorher einwandfrei gespeichert wurde?
Ist davon auszugehen, dass schon beim dbRlock() der Fehler zustande kam - die Fehlermeldung zeigt ja auf das unlock
@AUGE_OHR
XP haben wir heute mit SP3 versehen
Beim xBase Upgrade auf die 1.9.355 SL1 ist mein Boss nicht wirklich begeistert, da das System ja grundsätlich läuft - nur eben ab und zu der Fehler
da es im Thread passiert ist vermutlich dein ALIAS() auch "leer". versuche mal
Wie kommt eine "leerer" Alias zustande - wenn vorher einwandfrei gespeichert wurde?
Ist davon auszugehen, dass schon beim dbRlock() der Fehler zustande kam - die Fehlermeldung zeigt ja auf das unlock
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Ich habe heute die dbf's neu erzeugt und die Daten überspielt - ferner habe ich alle NTX Dateien neu erzeugt.
Und just vor einer Stunde ist der gleiche Fehler wieder aufgetreten!
Gibt es eine Möglichkeit - und bitte entschuldigt meine Newbie Frage - dass ich das dbRlock() / dbRUnlock()in einem BEGIN SEQUENCE Programm
einbinde, dass nicht das Programm anschliessend crashed sondern - mit einer Fehlermeldung weiter läuft
Ich hoffe, ich hab das halbwergs verständlich formuliert
Und just vor einer Stunde ist der gleiche Fehler wieder aufgetreten!
Gibt es eine Möglichkeit - und bitte entschuldigt meine Newbie Frage - dass ich das dbRlock() / dbRUnlock()in einem BEGIN SEQUENCE Programm
einbinde, dass nicht das Programm anschliessend crashed sondern - mit einer Fehlermeldung weiter läuft
Ich hoffe, ich hab das halbwergs verständlich formuliert
- Manfred
- Foren-Administrator
- Beiträge: 21248
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 211 Mal
- Danksagung erhalten: 71 Mal
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Moin,
Du fragst einfach ab, ob der Sperrvorgang geklappt hat und reagierst dann entsprechend darauf. Aber was willst Du stattdessen tun? Wenn nicht gesperrt werden kann, fallen auch entsprechende Aktionen dazu flach. Oder ist es egal, ob geschrieben wird oder nicht?
if ! db->(dbrlock())
tuwasanderes() <-- Fehlermeldung, oder Ersatzlösung, die keine Sperre benötigt.
else
machedaswasdusollst()
endif
Du fragst einfach ab, ob der Sperrvorgang geklappt hat und reagierst dann entsprechend darauf. Aber was willst Du stattdessen tun? Wenn nicht gesperrt werden kann, fallen auch entsprechende Aktionen dazu flach. Oder ist es egal, ob geschrieben wird oder nicht?
if ! db->(dbrlock())
tuwasanderes() <-- Fehlermeldung, oder Ersatzlösung, die keine Sperre benötigt.
else
machedaswasdusollst()
endif
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Hallo Manfred!
nachdem anscheinend der Fehler beim Entsperren passiert - wäre es egal, wenn nicht entsperrt wird und das Programm ordnungsgemäß beendet werden kann.
Danach müsste das Programm neu gestartet werden und somit ist zumindest "nur" der eine Datansatz nicht aktualisiert.
Gruß,
Bernhard
nachdem anscheinend der Fehler beim Entsperren passiert - wäre es egal, wenn nicht entsperrt wird und das Programm ordnungsgemäß beendet werden kann.
Danach müsste das Programm neu gestartet werden und somit ist zumindest "nur" der eine Datansatz nicht aktualisiert.
Gruß,
Bernhard
- Manfred
- Foren-Administrator
- Beiträge: 21248
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 211 Mal
- Danksagung erhalten: 71 Mal
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Oops,
war von Entsperren die Rede? Dann habe ich irgendwo gepennt. Sorry
war von Entsperren die Rede? Dann habe ich irgendwo gepennt. Sorry
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Nun, da sich der Fehler nicht richtig reproduzieren lässt hab ich einen pensioniertern Kollegen kontaktiert,
der ursprünglich bei uns Clipper Programmierer war. Von ihm hab ich den Tip bekommen, dass es ein Tool gibt um das Programm
Schrittweise mit dem Debugger zu durchlaufen. ( er schwärmte irgendwas von Version SommerXX und HerbstXX oder so )
Da ich das Programm in unserer Firma "geerbt" habe, weder Clipper noch xBase programmiert habe, kenne ich das Tool nicht!
Gibt es so etwas wie einen Debugger oder einen Debugmodus bei xBase und wie könnte ich ggf. den hinzulinken?
der ursprünglich bei uns Clipper Programmierer war. Von ihm hab ich den Tip bekommen, dass es ein Tool gibt um das Programm
Schrittweise mit dem Debugger zu durchlaufen. ( er schwärmte irgendwas von Version SommerXX und HerbstXX oder so )
Da ich das Programm in unserer Firma "geerbt" habe, weder Clipper noch xBase programmiert habe, kenne ich das Tool nicht!
Gibt es so etwas wie einen Debugger oder einen Debugmodus bei xBase und wie könnte ich ggf. den hinzulinken?
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Moin,
ja klar gibt es einen Debugger in Xbase++ (man beachte die Groß/Kleinschreibung der Buchstaben ). Sogar in 2 Versionen:
Ansonsten: Einfach die Linkoption /D setzen. Dann läufts mit Debugger. Die Funktionstasten für die Textversion kenn ich nicht mehr (arbeite selber schon seit Jahren mit VX), da mußt Du mal in der Onlinehilfe nachschauen. Aber Du kannst natürlich Breakpoints setzen (manuell im Debugger oder per Funktionsaufruf AltD() im Quellcode), bis zu der aktuellen Zeile durchlaufen lassen, Variablen beobachten, Objekte beobachten, etc. etc. etc.
Übriegns: Dein Ex-Kollege meinte übrigens vermutlich Clipper Sommer 87. Das ist die bekannteste Version, die auch die letzte war, die nach der Jahreszeit benannt wurde.
Jan
ja klar gibt es einen Debugger in Xbase++ (man beachte die Groß/Kleinschreibung der Buchstaben ). Sogar in 2 Versionen:
- Den Debugger im Textmodus für alle die, die nicht mit VX arbeiten.
- Den Debugger in VX.
Ansonsten: Einfach die Linkoption /D setzen. Dann läufts mit Debugger. Die Funktionstasten für die Textversion kenn ich nicht mehr (arbeite selber schon seit Jahren mit VX), da mußt Du mal in der Onlinehilfe nachschauen. Aber Du kannst natürlich Breakpoints setzen (manuell im Debugger oder per Funktionsaufruf AltD() im Quellcode), bis zu der aktuellen Zeile durchlaufen lassen, Variablen beobachten, Objekte beobachten, etc. etc. etc.
Übriegns: Dein Ex-Kollege meinte übrigens vermutlich Clipper Sommer 87. Das ist die bekannteste Version, die auch die letzte war, die nach der Jahreszeit benannt wurde.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Danke Jan für den Hinweis!
Ich hab nun in der Anleitung etwas herumgesucht um den Debugger zu aktivieren.
Genügt es eigentlich im project File fogendes stehen zu haben:
COMPILE = xpp
COMPILE_FLAGS = /n /w
DEBUG = yes
GUI = yes
OBJ_DIR = OBJ\
LINKER = alink
LINK_FLAGS =
RC_COMPILE = arc
RC_FLAGS = /v
PROJECT.XPJ
mit Alt+D ist nämlich damit kein Debuggerfenster aufrufbar!
vielleich kann mir jemand einen Tipp geben um den Debugger zum Laufen zu bringen
Ich hab nun in der Anleitung etwas herumgesucht um den Debugger zu aktivieren.
Genügt es eigentlich im project File fogendes stehen zu haben:
COMPILE = xpp
COMPILE_FLAGS = /n /w
DEBUG = yes
GUI = yes
OBJ_DIR = OBJ\
LINKER = alink
LINK_FLAGS =
RC_COMPILE = arc
RC_FLAGS = /v
PROJECT.XPJ
mit Alt+D ist nämlich damit kein Debuggerfenster aufrufbar!
vielleich kann mir jemand einen Tipp geben um den Debugger zum Laufen zu bringen
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Fehler Satz-/Dateisperre fehlgeschlagen
VX oder Textmodus? Im Textmodus xppdbg <exefile>
Jan
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Re: Fehler Satz-/Dateisperre fehlgeschlagen
herzlichen Dank !! - zumindest konnte ich das Programm nun starten
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Wenn Du den Textmodus-Debugger nimmst: Schau mal in die Hilfefunktion. Da gibt es ein ganzes kapitel über den Debugger, die Optionen, Menüfunktionen, etc.
Inhalt->Programmierwerkzeuge->Der Xbase++-Debugger. Und einfach mal durchblättern.
Jan
Inhalt->Programmierwerkzeuge->Der Xbase++-Debugger. Und einfach mal durchblättern.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Re: Fehler Satz-/Dateisperre fehlgeschlagen
ja, leider hab ich nur den Textmodusdebugger! Aber ich hoffe, dass ich zumindest hier einen Lösungsansatz finde.
Gibt es eigentlich irgeneine Funktion mit der ich sehen kann, welches SLE, oder Fenster gerade den aktuellen Focus hat?
Valype() == O aber der Name wäre mir wichtig -
ich meine herausgefunden zu haben, dass der Inputfocus in an ein anderes Fenster springt und damit eine komplett andere Datenbank öffnet, die hier überhaupt nicht
geöffnet werden sollte.
Gibt es eigentlich irgeneine Funktion mit der ich sehen kann, welches SLE, oder Fenster gerade den aktuellen Focus hat?
Valype() == O aber der Name wäre mir wichtig -
ich meine herausgefunden zu haben, dass der Inputfocus in an ein anderes Fenster springt und damit eine komplett andere Datenbank öffnet, die hier überhaupt nicht
geöffnet werden sollte.
Zuletzt geändert von BIK am Do, 01. Sep 2011 15:04, insgesamt 1-mal geändert.
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Da muß ich Dir widersprechen. Wenn Du Xbase++ ab 1.8 oder 1.82 hast (weiß nicht genau, wann das dazugekommen ist), dann hast Du auch VX.
Und die gesuchte Funktion ist SetAppFocus(). Ohne Parameter macht der nix als den aktiven XBPart zurückzugeben. Mit Parameter macht der das auch, aber setzt auch den Fokus auf den übergebenen XBPart.
Jan
Und die gesuchte Funktion ist SetAppFocus(). Ohne Parameter macht der nix als den aktiven XBPart zurückzugeben. Mit Parameter macht der das auch, aber setzt auch den Fokus auf den übergebenen XBPart.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Vielleicht wurde es nicht installiert - ich habe jedoch Version 1.90.331. Da ich die CD noch im Dateischrank habe, werde ich mal nachsehen, ob das Programm auf der CD ist.
EDIT: Auf unserer CD ist leider kein anderer Debugger
EDIT: Auf unserer CD ist leider kein anderer Debugger
- Jan
- Marvin
- Beiträge: 14662
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Bernhard,
natürlich ist da kein anderer Debugger. Aber VX ist da drauf. Und der beinhaltet einen anderen Debugger.
Jan
natürlich ist da kein anderer Debugger. Aber VX ist da drauf. Und der beinhaltet einen anderen Debugger.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- brandelh
- Foren-Moderator
- Beiträge: 15710
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 73 Mal
- Danksagung erhalten: 38 Mal
- Kontaktdaten:
Re: Fehler Satz-/Dateisperre fehlgeschlagen
Hi,
in dem Moment wo du auch nur den Debugger aufrufst (egal welchen) verliert dein Fenster den Eingabefocus !
Das muss noch nicht bedeuten, dass damit deine Workarea weg ist, da das Debugger Fenster diese nicht wechselt,
aber in einer multitasking gui Umgebung ist der Debugger nicht für alles zu gebrauchen.
Ich nutze für komplexe Probleme oft die gute alte ALTERNATE Datei um den Ablauf zu protokollieren:
Für LIVE-Studien habe ich mir eine Funktion geschrieben ( DebugPrint() => Wissensbasis ),
die in einem eigenen unabhängigen Fenster Statusmeldungen ausgibt.
in dem Moment wo du auch nur den Debugger aufrufst (egal welchen) verliert dein Fenster den Eingabefocus !
Das muss noch nicht bedeuten, dass damit deine Workarea weg ist, da das Debugger Fenster diese nicht wechselt,
aber in einer multitasking gui Umgebung ist der Debugger nicht für alles zu gebrauchen.
Ich nutze für komplexe Probleme oft die gute alte ALTERNATE Datei um den Ablauf zu protokollieren:
Code: Alles auswählen
set alternate to xyz.txt
set alternate on
set console off // GANZ WICHTIG BEI REINEN GUI Programmen
...
? date(), time(), ProcName(), ProcLine(), "Ich bin hier und erwarte ...", MyVar
...
if IchErwarte <> IchErhalte
? date(), time(), ProcName(), ProcLine(), "Ergebnis wiederspricht ..."
// eventuell auch mit Abbruch
msgbox("GROBER FEHLER")
quit
endif
...
set alternate to
die in einem eigenen unabhängigen Fenster Statusmeldungen ausgibt.
Gruß
Hubert
Hubert