OnError - GetErrorModuleName ist doch irgendwie doof

Fragen und Bugreports zur PureBasic 4.0-Beta.
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

OnError - GetErrorModuleName ist doch irgendwie doof

Beitrag von Jilocasin »

Tag.. oder besser "Abend" :mrgreen:

Ich hab da mal eine Frage zum GetErrorModuleName() in der OnError Lib:

Wieso wird bei der Ausgabe des Include-Files der komplette Dateipfad angegeben?
Wenn ich z.B. ein Executable erstelle, das einfach mal durch Null dividiert um OnError aufzurufen bekommt ich den kompletten Dateipfad des Includes, obwohl ich vielleicht die EXE jemandem geben möchte, aber nicht will, dass jeder meine persönliche Ordnerstruktur kennt :)

Wieso wird da nicht der Pfad relativ zum Original-Sourcecode ausgegeben, der eben diese Includes beinhaltet? :|
Bild
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Wiederspruch:
> aber nicht will, dass jeder meine persönliche Ordnerstruktur kennt
>> der Pfad relativ zum Original-Sourcecode

Also ich persönlich stimme dir zu, aber ich will keinen Pfad. Deshalb lasse ich es mit GetFilePath() anzeigen. Ist aber auch nicht das wahre... :|
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Beitrag von Jilocasin »

Stimmt auch eine gute Idee :mrgreen: Wieso bn ich da nicht drauf gekommen? :lol:

>Wiederspruch
Nää, mein letzter Satz lautete: Wieso wird da nicht der Pfad relativ zum Original-Sourcecode ausgegeben
Bild
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Für mich ist das einer, weil:
Wenn ich doch nicht will, dass der Benutzer meine EXE durch nen Editor jagt und dabei meine Ordnerstruktur rausbekommt, dann darf weder ein absoluter Pfad (wie jetzt) noch ein relativer Pfad (wie du meinst) in der EXE hinterlegt werden. Oder verstehe ich grad gar nichts hier? :?
Also meine Aussage ist: Keine Pfade egal welcher Art!

Denn ich möchte gern Meldungen wie diese hier ausgeben: "Fehler in 'Main Module' Zeile #PB_Compiler_Line". Aber stets muss ich mit GetFilePart arbeiten und habe immernoch das blöde .pb oder .pbi dran kleben...
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Beitrag von Jilocasin »

Wenn überhaupt kein Pfad in der EXE hinterlegt wird, ist das ja auch mies.
Nehm mal an du hast ein Include namens "a.pbi" im Ordner, wo sich auch dein Haupt-Code befindet und du hast ein "a.pbi" in einem Unterordner.
Wie sollst du dann rausfinden, in welchem Include der Fehler war, wenn als Modul bloß "a.pbi" oder noch schlimmer "a" ausgespuckt wird? :)

Da wäre dann sinnvoller beim ersten ein "a.pbi" und bei zweiten ein "blaordner\a.pbi" als Rückgabestring von GetErrorModuleName(), oder?
Oder eben z.B. "..\a.pbi", wenn es aus einem Überordner includiert wird.
Bild
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Stimmt, es ist Ansichtsssache.
Da ich imemr so Code, dass ich alle Includes + Hauptsource in einem Ordner habe, brauche ich das nicht.

Aber selbst, wenn ich so code, wie du, verwende ich immer einmalige Dateinamen.
Was für einen Sinn macht es denn, wenn du "Sprites.pbi" und "Unterordner\Sprites.pbi" inkludierst? Das navigieren in den Unterordner allein kostet mich dann ja schon Zeit.
Selbst, wenn ich eine Zentral-Include verwende, wie einige Leute das hier vielleicht machen, würde ich sie z. B: "D:\Zentral.pbi" nennen; trotzdem würde ich dann keine andere PB-Datei auch noch Zentral nennen.

Du hast Recht, über Situationen wie deinen habe ich nicht nachgedacht.

Vielleicht sollte man der Einfachheit halber 2 Möglichkeiten einfügen, eine mit abs./rel. Pfaden, eine, die z B. nur den Dateinamen enthält.
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Beitrag von Jilocasin »

AND51 hat geschrieben:Aber selbst, wenn ich so code, wie du
AND51 hat geschrieben:Du hast Recht, über Situationen wie deinen habe ich nicht nachgedacht.
Wer sagt denn, dass ich so code? :lol:
Das war ja nur ein Beispiel.. kommt warscheinlich selten vor, aber auszuschließen ist es nicht..

Wie auch immer.. danke für das mit dem GetFilePart(), werd ich unverzügerlich mal einbauen :allright:
Bild
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

> Wer sagt denn, dass ich so code?
Nicht, dass wir und misverstehen, ich missbillige deine "Art" des Codens in keinster Weise!
Vielmehr wollte ich mit dem Satz folgendes ausdrücken: "Wenn ich so meine Projekte anlegen würde, wie du, also mit Unterordnern, dann..."
Wobei ich Unterordner nur für Sounds, Gfx und Data benutze, PB-Codes bleiben immer im selben (root-)Ordner.

> danke für das mit dem GetFilePart()
Keine Ursache, Kollege! :allright:
Wie gesagt, ich muss das ja (leider) so lange benutzen, bis es (vielleicht irgendwann einmal) eine andere Lösung gibt.
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Beitrag von Jilocasin »

AND51 hat geschrieben:Vielmehr wollte ich mit dem Satz folgendes ausdrücken: "Wenn ich so meine Projekte anlegen würde, wie du, also mit Unterordnern, dann..."
Nochmal zum mitschreiben: Es war nur ein Beispiel. Ich (1. Person Singular :mrgreen: ) lasse meine Includes auch im selben Ordner, zwecks der Übersichtlichkeit..

Ach.. öhm.. vergesen wirs. Lass uns einfach einen trinken gehn, ja? :lol: Bild
Bild
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

Jilocasin hat geschrieben:Nehm mal an du hast ein Include namens "a.pbi" im Ordner, wo sich auch dein Haupt-Code befindet und du hast ein "a.pbi" in einem Unterordner.
Wie sollst du dann rausfinden, in welchem Include der Fehler war, wenn als Modul bloß "a.pbi" oder noch schlimmer "a" ausgespuckt wird? :)
entschuldige ein paar mal, aber wenn du deine includes so bezeichnest,
bist du mal voll fett selber schuld, wenn du ne bescheidene fehlermeldung bekommst.

> Aber stets muss ich mit GetFilePart arbeiten und habe immernoch das blöde .pb oder .pbi dran kleben...

wenn du eine ausgaberoutine für das release codest, kannst du das doch easy umsetzen.
und solange das projekt in der entwicklung ist, ist es doch positiv, komplette angaben zu bekommen.

also, ich versteh euer problem nicht!


PS:
> Ach.. öhm.. vergesen wirs. Lass uns einfach einen trinken gehn, ja?

sorry, hab ich übersehen... also, vergeßt mein posting, vergeßt das thema.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Gesperrt