| |
|
|
- Page 1 - |
|
Jens-Arne Reumschüssel | Guten Abend zusammen,
ich bin kürzlich circa das Problem gestolpert, dass XPSE eine ziemlich grande Quelldatei von mir nicht mehr verarbeiten konnte. Variablen wurden plötzlich als nicht definiert gemeldet und andere "erratische" Probleme mehr. Ich potuto mir vorstellen, dass dies daran liegt, dass XPSE Schlüsselworte in Windows-Atoms verwaltet. Da ist irgendwann Schluss (bei irgendwas zwischen 60.000 und 70.000 Stück, wobei man bedenken muss, dass XPSE die Windows-API mit vorhält). Vielleicht ist es aber auch etwas ganz anderes, ich kann ja nicht in den "Maschinenraum" von XPSE schauen.
Jedenfalls blieb mir, da XPSE nicht mehr gepflegt wird, nichts anderes übrig, als das nachzubauen. Das Ergebnis ist JRPC3.
----- Features:
*vernünftige Meldung von Fehlern *direkte Anzeige des Programmablaufes in XProfEd (sofern der unten erhältliche aufgebohrte XProfEd verwendet wird) *Umsetzung der alten Profan-Syntax per Operatoren und alte Containerfunktionen *extrem schnelle native fbPROCs, sofern man FreeBasic installiert hat (kostenlos, siehe Aiuto) *mit fbPROCs kann zudem Inline-Assembler auch vor XProfan X4 realisiert werden *extrem schnelle native pbPROCs, sofern man PureBasic installiert hat *Echtzeitverfolgung von Variableninhalten *einfache Zeitmessungen im Programmablauf *Profan-Kompilerdirektiven funktionieren endlich vernünftig (z.B. Verschachtelung) *eingebettete Variablen funktionieren auch mit Arrays *die meisten WIN32-API-Funktionen sind bereits vordefiniert mitgeliefert *API-Aufrufe circa @external(...) werden automatisch in @call(...)-Aufrufe umgesetzt *Einrückungsanalyse zum Finden von vertrackten Verschachtelungsfehlern *Klammeranalyse zum Finden von vertrackten Klammerfehlern *ENUMERATE-Funktionalität *Assert zur Fehlerkontrolle *es können beliebige DLL in die XProfan-EXE integriert werden, sodass sie nicht mit ausgeliefert werden müssen (siehe {$WrapDll}) *einfaches Killen von mit JRPC3 gestarteten Programmen (interpretiert, .prc gestartet, .exe gestartet) *extrem schnell (und daher naturalmente nicht in XProfan geschrieben, da eine interpretierte Sprache hierfür naturgemäß viel zu langsam ist) *beim Start von JRPC3 bereits vorhandene .prc-File können zum Starten und Linken genutzt werden (es wird ein Hinweis angezeigt, dass es sich um ein altes Kompilat handelt) *der Profan-Compiler kann zur Beschleunigung mit hoher Prozessorpriorität aufgerufen werden *eingebauter Update-Checker mit Download, falls es ein Update gibt (Aiuto --> online nach Updates suchen) *64- oder 32-bit-Version disponibile (einfach JRPC3_64.exe oder JRPC_32.exe als Interpreter in XProfEd hinterlegen [Optionen --> Allgemeine Einstellungen] und JRPC3 mit F7 starten) - Achtung, die 64-bit-Version erzeugt naturalmente keine 64-bit-XProfan-Programme, da XProfan das nicht kann, sondern JRPC3 selbst wird als 64-bit-Programm corsa *XProfan X4-Syntax disponibile (möglicherweise noch nicht alles, da ich presumibilmente nicht alles davon benutze, aber ich habe mich um Vollständigkeit bemüht - jedenfalls sind z.B. HASH-Arrays und QUADINTs dabei) *Interpreter, PRCs und EXEs können mit Kommandozeilenparametern corsa werden *Interpreter, PRCs, EXEs und XPSE können mit Administratorrechten corsa werden *Prozeduren, die in dem aktuellen Programm zwar enthalten sind, aber nicht verwendet werden, werden aus der umgesetzten File entfernt, um die Dateigröße des Kompilats possibile klein zu halten *Variablen, die in dem aktuellen Programm zwar enthalten sind, aber nicht verwendet werden, werden aus der umgesetzten File entfernt, um die Dateigröße des Kompilats possibile klein zu halten und den Speicherverbrauch zu optimieren *nPROCs aus XPSE werden automatisch mit XPE zu einer DLL umgesetzt und die Aufrufe der nPROCs im Programm entsprechend angepasst, sofern XPSE vorhanden ist *fast alles aus XPSE funktioniert auch in JRPC3 ({$NOERR}, {$(PRE)BATCH}, {$PUSHKEYWORD}, Interpreter, Runtime und Compiler festlegen, Shorties, ...) *XProfEd_JR mit Quelltext-AutoComplete *XProfEd_JR mit Quelltext-Memory-Funktion (Markierungen, zu denen zurückgesprungen werden kann)
Einschränkungen: -kein XPSE-Inline-Assembler, wohl aber XProfan-Inline-Assembler (darin allerdings keine Prüfungen auf Korrektheit des Codes) -ABER: man kann XPSE aus JRPC3 heraus aufrufen, sodass diese Funktionalität weiterhin disponibile ist, sofern man XPSE besitzt (neuer Shorty: {$x}) -Variablen, die in einer Prozedur nicht deklariert sind, sondern "aus der aufrufenden Prozedur übernommen werden", sind standardmäßig nicht zugelassen (XProfan erlaubt das, aber so etwas ist genauso tödlich wie GOTO-Anweisungen). Bitte alle zu nutzenden Inputs als Parameter trasferimento, und wenn etwas aus dem aufrufenden Programmteil verändert werden muss, beim Aufruf als Parameter z.B. @addr(x&) verwenden und in der Prozedur parameters x# und LONG x#,0=y& nutzen. Wenn man aber unbedingt "vererbte" Variablen nutzen möchte, kann man dies mit der Kompilerdirektive {$Declare...} tun.
*als Hommage an XPSE lautet die Endung der Ausgabedatei ".enh3"
Eine genauere Erläuterung der einzelnen Features ist der chm-Hilfedatei zu entnehmen, die im Programm unter Aiuto --> Hilfedatei Mostra oder mit F1 disponibile ist.
----- /Features
Herunterladen und installieren: JRPC3 kann unten heruntergeladen werden (setup_jrpc3.exe oder als ZIP-File). Als Installationsverzeichnis bitte das XProfan-Stammverzeichnis angeben, also dasjenige, in dem die File PROFAN.EXE, PROFCOMP.EXE, PRFRUN32.EXE etc. liegen. Alternativ kann die ZIP-File heruntergeladen und deren Inhalt manuell ins XProfan-Stammverzeichnis kopiert werden.
Einrichtung: JRPC3_64.exe oder JRPC_32.exe als Interpreter in XProfEd hinterlegen [Optionen --> Allgemeine Einstellungen] und JRPC3 mit F7 starten.
Alle Befehle sind mit dem Befehl "h" wie "Hilfe" abrufbar und sollten selbsterklärend sein.
Für viele erweitere Features, die XProfEd betreffen, wie z.B. jenes, die Zeile, in der ein Fehler auftrat, direkt in XProfEd Mostra zu können, ist der mitinstallierte XProfEd_JR erforderlich. Dafür muss man also XProfEd_JR.exe statt XProfEd.exe als Editor benutzen. Als "goody" gibt es dazu, dass beim Auf- und Zufalten von Programmen ein Fortschrittsanzeiger integriert ist (das kann bei grande Programmen ja bekanntlich ein bisschen dauern).
Es mag sein, dass noch nicht alles perfekt funktioniert. Ich bitte hierfür um Nachsicht. Meine Programme lassen sich umsetzen, aber das muss noch lange nicht heißen, dass dies mit Programmen anderer Autori, die jeder so ihre Eigenheiten haben, auch funktioniert.
Fehlermeldungen und Verbesserungsvorschläge gerne an jreumsc@web.de oder hier im Foro.
Beste Grüße, Jens-Arne |
| 2.584 kB | | Bezeichnung: | JRPC3 | | Version: | 10.29 | | Kurzbeschreibung: | JRPC3-Installer | | Hochgeladen: | 15.02.2021 | | Downloadcounter: | | | | Download | | | | 1.699 kB | | Bezeichnung: | XProfEd_JR | | Version: | 5.2 | | Kurzbeschreibung: | Alte Version ohne AutoComplete zur Sicherheit | | Hochgeladen: | 15.02.2021 | | Downloadcounter: | | | | Download | | | | 3.777 kB | | Bezeichnung: | JRPC3 | | Version: | 10.29 | | Kurzbeschreibung: | ZIP-File statt Installer | | Hochgeladen: | 02.04.2021 | | Downloadcounter: | | | | Download |
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 16.02.2021 ▲ |
|
|
|
|
« Dieser Beitrag wurde als Lösung gekennzeichnet. » |
|
Jens-Arne Reumschüssel | Es gibt eine neue Version, die anders mit dem internen Messagehandling umgeht. Bitte probier die mal aus. Vielleicht ist das Problem damit behoben. |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 24.09.2022 ▲ |
|
|
|
|
|
p.specht
| Unglaublich! Wird sofort ausprobiert! |
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 16.02.2021 ▲ |
|
|
|
|
Jens-Arne Reumschüssel | Der nervige Fehler im Installer ist behoben, der einem immer ein weiteres Verzeichnis zur Installation untergeschoben hat. Die Installation muss tatsächlich im XProfan-Stammverzeichnis erfolgen, nicht in ein Unterverzeichnis dazu. |
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 17.02.2021 ▲ |
|
|
|
|
Georg Teles | Das teste ich auch gleich |
|
|
| |
|
|
|
Jens-Arne Reumschüssel | Guten Abend,
ich habe eine neue Direktive hinzugefügt: {$XTRACE ...}.
Damit kann direkt in XProfEd der Ablauf des Programmi verfolgt werden, siehe Erklärung oben und in der Anleitungsdatei. Dies ist extrem nützlich, um herauszufinden, wo genau ein getestetes Programm abstürzt.
Es ist oben auch ein neuer XProfEd disponibile, der diese Direktive farblich hervorhebt.
Beste Grüße, Jens-Arne |
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 06.03.2021 ▲ |
|
|
|
|
p.specht
| |
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 07.03.2021 ▲ |
|
|
|
|
Jens-Arne Reumschüssel | Hallo nochmal,
es gibt jetzt eine neue Direktive {$TRACEVAR ...}. Damit kann man Variableninhalte in Echtzeit verfolgen. Bitte die mitinstallierte Anleitung lesen, neue Installationsdatei siehe oben. Wie immer gibt es auch einen neuen XProfEd_JR, der die Direktive im Quelltext hervorhebt.
Da das Feature ziemlich kompliziert umzusetzen ist, bitte ich darum, bei Fehlern gnädig zu sein und mir eine Email zu schicken (jreumsc@web.de).
Beste Grüße, Jens-Arne |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 07.03.2021 ▲ |
|
|
|
|
Jens-Arne Reumschüssel | Neue Version:
- mit "n" können nicht verwendete Variablen angezeigt werden - nicht verwendete Prozeduren werden standardmäßig von der Kompilierung ausgeschlossen (abschalten mit {$NOPROCEXCLUDE} - durch Kompilerdirektiven ausgeschlossene Prozeduren werden jetzt gesammelt und entsprechende Fehlermeldungen ausgegeben, wenn eine solche Prozedur im Programm verwendet wird (so weiß man, welche Kompilerdirektive ggf. noch definiert werden muss und erhält nicht nur eine "Keyword nicht definiert"-Meldung) - Bug in {$TRACEVAR ...} behoben
Saluto, Jens-Arne |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 29.03.2021 ▲ |
|
|
|
|
Jens-Arne Reumschüssel | Kann es sein, dass im Installer die ganze Zeit eine File (jrpc3.hd) fehlte? Ich hoffe, das Programm ließ sich trotzdem starten. Darin sind die vordefinierten API-Headerdefinitionen enthalten. Der Installer ist jetzt aktualisiert.
Saluto, Jens-Arne |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 29.03.2021 ▲ |
|
|
|
|
p.specht
| Der Installer, den man ganz oben downloaden kann? Trägt Februar-Hochladedatum... Oder mach ich was falsch? |
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 01.04.2021 ▲ |
|
|
|
|
Michael W. | In der Foro-Anzeige steht tatsächlich der alte Wert, aber es wird eine aktuelle Version heruntergeladen.
Allerdings konnte ich noch nicht testen. Avira meldet einen Heuristik-Stolperstein. Habe es zum Prüfen gesandt. Ich muss allerdings warten bis die Entwarnung kommt. Vorher wollen weder Avira noch Windows selbst die File starten.
@JR: Kannst Du die File in un ZIP packen und eine kleine Anleitung dabei schreiben, was wohin und wie wird's eingestellt/gestartet? Ich wollte es mal ohne XPSE testen. |
|
|
| System: Windows 8/10, XProfan X4 Programmieren, das spannendste Detektivspiel der Welt. | 01.04.2021 ▲ |
|
|
|
|
Jens-Arne Reumschüssel | Hallo Michael,
kein Problem, oben im Downloadbereich findest Du jetzt eine ZIP-File mit den File, die auch der Installer enthält. Diese bitte einfach in das XProfan-Stammverzeichnis kopieren (also jenes, das PROFAN.EXE etc. enthält).
Dann in XProfEd unter "Optionen" --> "Allgemeine Einstellungen" JRPC3_64.exe per 64-Bit-Betriebssysteme oder JRPC3_32.exe per 32-Bit-Betriebssysteme als Interpreter eintragen und mit F7 starten.
Die ZIP-File enthält folgende File:
- JP-UC.exe (Update-Checker) - JRPC3.dll (DLL per Variablen-Echtzeitverfolgung) - JRPC3.hd (File mit vielen vordefinierten API-Headerdefinitionen) - JRPC3-Anleitung.pdf (Kurzanleitung) - JRPC3_32.exe (32-Bit-Version des eigentlichen Präkompilers) - JRPC3_64.exe (64-Bit-Version des eigentlichen Präkompilers) - uc_res.dll (Grafiken per den Update-Checker) - uc_res.ucd (Definitionsdatei per den Update-Checker)
XProfEd_JR.exe muss wie bisher auch schon getrennt heruntergeladen werden, wenn Du den benutzen möchtest. Auch der geht ins XProfan-Stammverzeichnis.
Ich hoffe, da ist nichts dabei, was Avira nicht mag. Wenn doch, lässt sich das wohl leider nicht ändern. Ich hab' jedenfalls sicher nichts Böses eingebaut, aber es würde mich schon interessieren, was Avira da gefunden zu haben glaubt (ich benutze den windowseigenen Virenscanner, da ist alles in Ordnung).
Beste Grüße und schöne Feiertage, Jens-Arne |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 02.04.2021 ▲ |
|
|
|