Xbase++ : ErrorSys Konstanten

Still in use?

Moderator: Moderatoren

Antworten
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12126
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Xbase++ : ErrorSys Konstanten

Beitrag von AUGE_OHR » Sa, 26. Okt 2019 8:27

hi,

ist euch schon mal aufgefallen das die Xbase++ Konstanten z.b. für o:GenCode nicht mit Cl*pper übereinstimmen :shock:
Error_Diff.JPG
Error_Diff.JPG (171.48 KiB) 544 mal betrachtet
gruss by OHR
Jimmy

Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 7765
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Kontaktdaten:

Re: Xbase++ : ErrorSys Konstanten

Beitrag von Tom » Sa, 26. Okt 2019 8:39

Spielt das eine Rolle? Wenn Du nur die Konstante verwendest, kann Dir doch egal sein, durch welchen Wert sie substituiert wird.
Herzlich,
Tom

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12126
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Xbase++ : ErrorSys Konstanten

Beitrag von AUGE_OHR » Sa, 26. Okt 2019 10:15

hi,
Tom hat geschrieben:
Sa, 26. Okt 2019 8:39
Spielt das eine Rolle? Wenn Du nur die Konstante verwendest, kann Dir doch egal sein, durch welchen Wert sie substituiert wird.
du siehst bei Snapshot 3 x Error.CH ...

eine Abfrage sieht so aus

Xbase++

Code: Alles auswählen

      CASE oError:genCode == XPP_ERR_ZERODIV
      CASE oError:genCode == XPP_ERR_OPEN .AND. ;
      CASE oError:genCode == XPP_ERR_APPENDLOCK .AND. ;
Cl*pper & Co

Code: Alles auswählen

   IF oError:genCode == EG_ZERODIV
   IF oError:genCode == EG_OPEN .AND. ;
   IF oError:genCode == EG_APPENDLOCK .AND. ;
es scheint mir also eine Rolle zu spielen ob man Cl*pper kompatible Werte für die Konstanten nimmt oder nicht.
eine Cl*pper ErrorSys.PRG / Error.CH kann man nicht so einfach nach Xbase++ übernehmen und umgekehrt.

p.s. sind im Cl*pper Bereich und als Warnung gedacht das man nicht lange rum rätzelt was da schief läuft.
gruss by OHR
Jimmy

Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 7765
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Kontaktdaten:

Re: Xbase++ : ErrorSys Konstanten

Beitrag von Tom » Sa, 26. Okt 2019 10:39

Na klar spielt es eine Rolle, welche Ersetzung erfolgt. Viele Konstanten gab es unter Clipper auch überhaupt nicht, und einige, die es für Clipper gab, kennt Xbase++ nicht mehr. Aber das ist doch das Elegante an Konstanten - Du kannst den gleichen Code verwenden, ohne Dich darum scheren zu müssen, durch welchen Wert konkret ersetzt wird, vorausgesetzt, Du bindest die korrekten Regeln ein.
Herzlich,
Tom

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12126
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Xbase++ : ErrorSys Konstanten

Beitrag von AUGE_OHR » So, 27. Okt 2019 1:28

hi Tom,

wenn die Konstanten einen unterschiedlichen Wert haben heisst es das o:GenCode einen "anderen" Wert liefert :!:

wie du richtig sagst ist es einer Konstanten egal welchen Wert die hat aber der Wert von Xbase++ o:GenCode unterscheidet sich zu Cl*pper was nicht kompatible ist.

das ist das Problem wenn man einen Cl*pper Source (incl. *.CH, LNK, RMK) mit Xbase++ zusammenbaut.

Code: Alles auswählen

DIR *.PRG /B > PROJECT.XPJ
es wird ja kein Compiler/Linker Fehler ausgegeben weil *.CH im Verzeichnis ... erst bei einem Absturz ist etwas "anders" ... :?

nachdem ich Errorsys.PRG aus Project.XPJ rausgeworfen hatte kam die "normale" Xbase++ Errorsys Meldung zum Vorschein.
also hab ich mir das mal genauer angesehen und stiess auf Xbase++ o:GenCode was unterschiedliche Werte liefert.
gruss by OHR
Jimmy

Antworten