Seite 1 von 3

Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 18:36
von Mok
Hallo.
Bevor ich's ins Bugforum poste und hinterher wieder geflamed werde, vonwegen das sei kein Bug, sonern ein Fehler meinerseits, der logisch erklärbar ist, poste ich's einfach hier:
In der ExtendedStringLib.pbi hab ich eine Prozedur namens ESL_LCaseFirst() programmiert. Wenn ich diese jetzt in der ESLExample.pb aufrufen will, wird gemeldet: ESL_LCaseFirst() ist keine Funktion, Array, Makro oder LinkedList.
Ich hab das Archiv mit den beiden Dateien mal hochgeladen: http://em.q-soft.ch/files/get/f4ytvz_M1k/esl.zip

Grüße, Mok

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 18:49
von ts-soft
Ich weiß ja nicht, wie Du example aufrufst, aber es scheint, es wird das aktuelle Verzeichnis
nicht auf das Source-Verzeichnis gesetzt. Tausendmal durchgekaut, nimm einen absoluten
Pfad für Deine XInclude-Anweisung und alles wird schön :wink:

bzw. ist die Include-Anweisung überhaupt vorhanden?

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 18:52
von Mok
ts-soft hat geschrieben:nimm einen absoluten
Pfad für Deine XInclude-Anweisung und alles wird schön :wink:
Ich definiere schön: Schön ist, wenn man eine zusätzliche Zeile zu seinem Code hinzufügt und danach noch immer nicht funzt.
Ich hab jetzt SetCurrentDirectory(GetPathPart(ProgramFilename())) oben dazugeschrieben, aber es ist alles wie vorher.
ts-soft hat geschrieben:ch weiß ja nicht, wie Du example aufrufst
Per F5 :shock:

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 18:53
von STARGÅTE
Absolut ist auch nicht gut ^^

Denn dann hat man n menge Arbeit beim verschieben.

Wenn du aber mit relativen arbeitest immer den IncludePath setzten, udn wenns nur n Punkt ist also selbes Verzeichnis.

Code: Alles auswählen

IncludePath "."
IncludeFile "ExtendedStringLib.pbi"
Der Code geht bei mir.

Wahrscheinlich hast du bei dir irgendwann mal den IncludePath geändert (in anderen Includes) oder datasection

EDIT:

SetCurrentDirectory() ist ein LaufZeitFunktion! und hat nix mit der CompilerFunktion für IncludeFile gemeinsam.

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 18:56
von ts-soft
Mok hat geschrieben:Per F5 :shock:
Mit F5 wirds gestartet aber nicht geladen. Doppelklick auf Datei, Dateiöffnen usw.
wäre interessant gewesen.

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 18:57
von Mok
@STARGÅTE: Mit IncludePath geht's auch nicht
Ich hab PB jetzt schon 5x neu gestartet, langsam bekomm ich Angst.

Edit:
@ts-soft: Na ja, ich starte PureBasic, warte zirka eine Sekunde, und dann ist's da

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 19:00
von ts-soft
Das laden des letzten Source hab ich ausgeschaltet, vielleicht ist das das Problem.
Lade es mal per doppelklick. Weil ansonsten gehts ja bei STARGÅTE und mir.

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 19:02
von STARGÅTE
Jup,

Einfach mal selber dein Archiv runterladen und doppelklick auf "ESLExample.pb"

Dann sollte in PB (4.50) nur ein Panel geöffnet werden.
Dann F5 und es läuft

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 19:07
von Captn. Jinguji
Also, mal ganz was anderes: der 32Bit compiler bringt was Ausführbares zustande,
der 64 Bit compiler (egal ob 450 oder 441 ) schmeisst einen ASM error.
Wie kriegte man nochmal die zur ASM Zeile gehörende PB-Source - Zeile raus ?
Hab noch nie so einen Fehler gesehen, würd mich aber interessieren, falls ich mal so einen Fehler in meinen sources
produzieren sollte.

Re: Bug? - ESL_LCaseFirst() ist (angeblich) keine Funktion.

Verfasst: 06.04.2010 19:14
von Mok
@STARGÅTE: Jetzt geht es (auch ohne, dass ich das Archiv nochmal geladen habe) :shock:
@Captn. Jinguji: Wie führt man in der 32-Bit-Version den 64er-Compiler aus? Dynamische CPU einstellen?