Seite 1 von 3

Konstanten in PB?

Verfasst: 29.12.2010 22:19
von Falko
Ich habe hier aus folgende Konstanten liste versucht
deren Werte zu ermitteln und musste aber feststellen,
das einige Konstanten nicht mehr existieren.

http://www.purebasic.com/documentation/ ... tants.html

Dazu habe ich mir aus dem vorherigen Link die Konstanten herauskopiert und
mit Debugs versehen. Nach Ausgabe, habe ich die Konstanten auskommentiert und
die Werte, die in PB ausgegeben wurden erneut eingetragen.
Gibt es eine andere Möglichkeit, sich die PB-Constanten alle
anzeigen zu lassen? In den Foren habe ich leider nichts ausser von 2004 gefunden.

Die nicht mehr vorhandenen Konstanten sind folgende.

Code: Alles auswählen

debug #PB_Spin3D_ReadOnly
debug #PB_Spin3D_Numeric
debug #PB_OnError_r31
debug #PB_OnError_r2
debug #PB_OnError_R15
debug #PB_OnError_r1
debug #PB_OnError_r0
debug #PB_OnError_lr
debug #PB_OnError_ctx
debug #PB_OnError_cr
debug #PB_Menu_Quit
debug #PB_Menu_Preferences
debug #PB_Menu_About
debug #PB_FileSystem_WriteUser
debug #PB_FileSystem_WriteGroup
debug #PB_FileSystem_WriteAll
debug #PB_FileSystem_ReadUser
debug #PB_FileSystem_ReadGroup
debug #PB_FileSystem_ReadAll
debug #PB_FileSystem_Link
debug #PB_FileSystem_ExecUser
debug #PB_FileSystem_ExecGroup
debug #PB_FileSystem_ExecAll
debug #PB_Button3D_Toggle
debug  #PB_OnError_xer
debug  #PB_OnError_RSP
debug  #PB_OnError_RSI
debug  #PB_OnError_RDX
debug  #PB_OnError_RDI
debug  #PB_OnError_RCX
debug  #PB_OnError_RBX
debug  #PB_OnError_RBP
debug  #PB_OnError_RAX
debug  #PB_OnError_R9
debug  #PB_OnError_R8
Gruß Falko

[Edit]
Ich habe hier nun debug zum Verständnis hinzugefügt und des weiteren eine Bugmeldung ins englische Forum gestellt
[/Edit]

Re: Konstanten in PB?

Verfasst: 29.12.2010 22:33
von STARGÅTE
Die stehen doch alle unter:
Werkzeuge -> Strukturverzeichnis -> Konstanten -> P
drin, sogar mit Wert

Re: Konstanten in PB?

Verfasst: 29.12.2010 22:53
von Falko
STARGÅTE hat geschrieben:Die stehen doch alle unter:
Werkzeuge -> Strukturverzeichnis -> Konstanten -> P
drin, sogar mit Wert
Stimmt. Aber warum zeigt der Debugger sie nicht an?

Re: Konstanten in PB?

Verfasst: 30.12.2010 00:11
von PMV
Das nicht vorhanden sein von Konstanten, die dokumentiert sind,
bezeichnet man als Bug. Ob nun vergessen wurde die Doku zu
ändern, oder die definition verloren gegangen ist, muss dann
natürlich erst noch geklärt werden :D

Re: Konstanten in PB?

Verfasst: 30.12.2010 14:37
von sharkpeter
Hallo,

der Ehrlichkeit halber muß ich hier noch anfügen, das ich Falko damit gequält habe.

Grund: Umstellung eines Codes auf 4.51. Unter 4.41 lief er noch, bei 4.50 weiß ich
es nicht, aber unter 4.51 macht er Zicken ... Eigentlich bei einer ganz banalen
EventType() Abfrage ...

Gruß Jens

Re: Konstanten in PB?

Verfasst: 30.12.2010 14:58
von ts-soft
STARGÅTE hat geschrieben:Die stehen doch alle unter:
Werkzeuge -> Strukturverzeichnis -> Konstanten -> P
drin, sogar mit Wert
Bei mir fehlen die :freak:

Re: Konstanten in PB?

Verfasst: 30.12.2010 15:04
von Falko
Ich habe das nun ins englische Forum als Bug reingestellt und bei beiden
die Konstanten jeweils mit Debug ergänzt.

Gruß Falko

Re: Konstanten in PB?

Verfasst: 30.12.2010 15:55
von freak
Die Konstanten gibt es nur in den OS/CPU-Versionen wo sie gebraucht werden.
- Die OnError Konstanten sind für x64 und PPC CPUs und desshalb nicht in der x86-Version
- Die FileSystem Konstanten sind Linux-spezifisch
- Die Menu Konstanten sind OSX-spezifisch

Bei den 3D-Konstanten weiß ich nicht warum die fehlen. Aber das kann ich auch nicht testen weil ich mit der 3D-Engine nichts zu tun habe. Da muss Fred danach schauen.

Re: Konstanten in PB?

Verfasst: 30.12.2010 16:05
von ts-soft
freak hat geschrieben:- Die OnError Konstanten sind für x64 und PPC CPUs und desshalb nicht in der x86-Version
Da viele x64 und x86 von einer IDE aus kompilieren, wäre es IMHO wünschenswert, wenn beide Varianten
im Strukture-Viewer vorhanden wären. Auch für das "Autovervollständigen".

Gruß
Thomas

Re: Konstanten in PB?

Verfasst: 30.12.2010 16:44
von sharkpeter
Hallo,

der Vollständigkeit halber hier noch die Sache, die alles ins Rollen gebracht hat. Auf der
Suche nach dem Grund warum was ging nun nicht mehr geht, habe ich die Ergebnisse
von EventType() bzw. die dahinter stehenden Konstanten gesucht und bin über das
Ergebnis 256 gestolpert. Das jedoch ist nicht der Grund, warum der Code nicht mehr
so funktioniert, wie unter 4.4x. Darauf hat Falko angefangen, das im Strukturverzeichnis
stehende zu analysieren, mit dem Ergebnis dieses Threads hier.

Man starte den Code mal unter 4.4x und 4.5x und sehe was passiert. Dazu einfach einmal
in die unteren drei String hineinklicken. Über Sinn und Unsinn der Requester bitte keine
Ausführungen, ich habe den Code des echten Programms einfach soweit reduziert wie
er jetzt ist, damit ich dem Problem eventuell selber auf die Schliche komme. Eine Krücke
habe ich mir dazu auch schon gebaut, aber das ist erst einmal egal.

Nur soviel: früher wurde der Focus freigegeben, wenn man in ein anderes Fenster oder
einen Requester ging ... Mich deucht es schwer, das so etwas ähnliches bei 3.92 oder 3.94
schon einmal gewesen ist ...

Hier der Link zum Code:
http://www.jhc-software.de/Programme/Pu ... 8122010.pb

Gruß Jens