| |
|
|
- Página 1 - |
|
Jens-Arne Reumschüssel | Bueno Abend zusammen,
Yo bin kürzlich encima el problema gestolpert, dass XPSE una bastante große Quelldatei de No mehr verarbeiten podría. Variables fueron plötzlich como no definiert gemeldet y otro "erratische" Problemas mehr. Yo podría me vorstellen, dass dies daran liegt, dass XPSE Schlüsselworte en Windows-Atoms verwaltet. Como es irgendwann Schluss (en algo zwischen 60.000 y 70.000 Stück, wobei uno bedenken muss, dass XPSE el Windows-API con vorhält). Tal vez lo aber auch algo bastante más, Yo de hecho puede no en el "Maschinenraum" de XPSE schauen.
Jedenfalls blieb me, como XPSE no mehr gepflegt se, nichts más übrig, como el nachzubauen. Das Ergebnis es JRPC3.
----- Features:
*vernünftige Meldung de Fehlern *direkte Anzeige des Programmablaufes en XProfEd (sofern el unten erhältliche aufgebohrte XProfEd verwendet se) *Umsetzung el alten Profano-Syntax para Operatoren y alte Containerfunktionen *extremo schnelle native fbPROCs, sofern uno FreeBasic installiert ha (libre, siehe Ayuda) *con fbPROCs kann zudem Inline-Ensamblador auch antes XProfan X4 realisiert voluntad *extremo schnelle native pbPROCs, sofern uno PureBasic installiert ha *Echtzeitverfolgung de Variableninhalten *einfache Zeitmessungen en el Programmablauf *Profano-Kompilerdirektiven trabajo endlich vernünftig (z.B. Verschachtelung) *eingebettete Variables trabajo auch con Arrays *el meisten WIN32-API-Características son ya vordefiniert mitgeliefert *API-Aufrufe encima @external(...) voluntad automáticamente en @call(...)-Aufrufe umgesetzt *Einrückungsanalyse para Finden de vertrackten Verschachtelungsfehlern *Klammeranalyse para Finden de vertrackten Klammerfehlern *ENUMERATE-Funktionalität *Assert a Fehlerkontrolle *lo puede beliebige DLL en el XProfan-EXE integriert voluntad, sodass ellos no con ausgeliefert voluntad necesario (siehe {$WrapDll}) *einfaches Killen de con JRPC3 gestarteten Programmen (interpretiert, .prc comenzó, .exe comenzó) *extremadamente rápido (y por lo tanto natürlich no en XProfan geschrieben, como una interpretierte Lingua esta naturgemäß viel a langsam es) *beim Start de JRPC3 ya vorhandene .prc-Archivos puede para Starten y Linken genutzt voluntad (lo se una Referencia adecuado, dass es una altes Kompilat es) *el Profano-Compiler kann a Beschleunigung con hoher Prozessorpriorität aufgerufen voluntad *eingebauter Actualización-Checker con Descargar, si lo una Actualización son (Ayuda --> online después de Updates suchen) *64- oder 32-bit-Versión verfügbar (simplemente JRPC3_64.exe oder JRPC_32.exe como Interpreter en XProfEd hinterlegen [Optionen --> Allgemeine Einstellungen] y JRPC3 con F7 starten) - Achtung, el 64-bit-Versión producido natürlich no 64-bit-XProfan-Programas, como XProfan el no kann, pero JRPC3 incluso se como 64-bit-Programa ausgeführt *XProfan X4-Syntax verfügbar (möglicherweise todavía no alles, como Yo vermutlich no alles su benutze, pero yo habe mich en Vollständigkeit bemüht - jedenfalls son z.B. HASH-Arrays y QUADINTs esta) *Interpreter, PRCs y EXEs puede con Kommandozeilenparametern ausgeführt voluntad *Interpreter, PRCs, EXEs y XPSE puede con Administratorrechten ausgeführt voluntad *Prozeduren, el en el aktuellen Programa zwar enthalten son, pero no verwendet voluntad, voluntad de el umgesetzten Expediente lejos, a Dateigröße des Kompilats möglichst klein a halten *Variables, el en el aktuellen Programa zwar enthalten son, pero no verwendet voluntad, voluntad de el umgesetzten Expediente lejos, a Dateigröße des Kompilats möglichst klein a halten y el Speicherverbrauch a optimieren *nPROCs de XPSE voluntad automáticamente con XPE a uno DLL umgesetzt y el Aufrufe el nPROCs en el Programa entsprechend adaptado, sofern XPSE disponible es *fast alles de XPSE funktioniert auch en JRPC3 ({$NOERR}, {$(PRE)BATCH}, {$PUSHKEYWORD}, Interpreter, Runtime y Compiler festlegen, Shorties, ...) *XProfEd_JR con Ver código fuente-AutoComplete *XProfEd_JR con Ver código fuente-Memory-Función (Markierungen, a denen zurückgesprungen voluntad kann)
Einschränkungen: -kein XPSE-Inline-Ensamblador, wohl aber XProfan-Inline-Ensamblador (en él allerdings no Prüfungen en Korrektheit des Codes) -ABER: uno kann XPSE de JRPC3 heraus aufrufen, sodass esta Funktionalität weiterhin verfügbar es, sofern uno XPSE besitzt (neuer Shorty: {$x}) -Variables, el en uno Procedimiento no deklariert son, pero "aus el aufrufenden Procedimiento übernommen werden", son standardmäßig no zugelassen (XProfan erlaubt el, aber así algo es genauso tödlich como GOTO-Anweisungen). Bitte todos a nutzenden Inputs como Parámetro transferencia, y si algo de el aufrufenden Programmteil verändert voluntad muss, beim Aufruf como Parámetro z.B. @addr(x&) uso y el Procedimiento parámetros x# y LONG x#,0=y& nutzen. Wenn uno aber necesariamente "vererbte" Variables nutzen möchte, puede ser dies con el Kompilerdirektive {$Declarar...} tun.
*como Hommage a XPSE lautet el Endung el Ausgabedatei ".enh3"
Un genauere Erläuterung el individual Features es el chm-Hilfedatei a entnehmen, el en el Programa bajo Ayuda --> Hilfedatei Mostrar oder con F1 verfügbar es.
----- /Features
Descargar y installieren: JRPC3 kann unten heruntergeladen voluntad (setup_jrpc3.exe oder como ZIP-Expediente). Als Installationsverzeichnis Por favor, el XProfan-Stammverzeichnis angeben, also dasjenige, en el el Archivos PROFAN.EXE, PROFCOMP.EXE, PRFRUN32.EXE etc. mentira. Alternativ kann el ZIP-Expediente heruntergeladen y deren Inhalt manuell en el XProfan-Stammverzeichnis kopiert voluntad.
Einrichtung: JRPC3_64.exe oder JRPC_32.exe como Interpreter en XProfEd hinterlegen [Optionen --> Allgemeine Einstellungen] y JRPC3 con F7 starten.
Alle Befehle son con el Befehl "h" como "Hilfe" abrufbar y debería selbsterklärend ser.
Für viele erweitere Features, el XProfEd betreffen, como z.B. jenes, el Línea, en el una Fehler auftrat, direkt en XProfEd Mostrar a puede, es el mitinstallierte XProfEd_JR erforderlich. Dafür muss uno also XProfEd_JR.exe en lugar de XProfEd.exe como Editor benutzen. Als "goody" hay dazu, dass beim Auf- y Zufalten de Programmen una Fortschrittsanzeiger integriert es (el kann en großen Programmen sí bekanntlich una bisschen dauern).
Lo mag ser, dass todavía no alles perfekt funktioniert. Yo Por favor, esta en Nachsicht. Mi Programas dejar se umsetzen, aber el muss todavía largo no heißen, dass dies con Programmen otro Autores, el cada así ihre Eigenheiten haben, auch funktioniert.
Fehlermeldungen y Verbesserungsvorschläge gerne a jreumsc@web.de oder hier en el Foro.
Beste Grüße, Jens-Arne |
| 2.584 kB | | Bezeichnung: | JRPC3 | | Versión: | 10.29 | | Kurzbeschreibung: | JRPC3-Installer | | Hochgeladen: | 15.02.2021 | | Ladeanzahl: | | | | Descargar | | | | 1.699 kB | | Bezeichnung: | XProfEd_JR | | Versión: | 5.2 | | Kurzbeschreibung: | Alte Versión sin AutoComplete a Sicherheit | | Hochgeladen: | 15.02.2021 | | Ladeanzahl: | | | | Descargar | | | | 3.777 kB | | Bezeichnung: | JRPC3 | | Versión: | 10.29 | | Kurzbeschreibung: | ZIP-Expediente en lugar de Installer | | Hochgeladen: | 02.04.2021 | | Ladeanzahl: | | | | Descargar |
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 16.02.2021 ▲ |
|
|
|
| |
|
- Página 21 - |
|
|
« Dieser Contribución wurde como Solución gekennzeichnet. » |
|
- Página 15 - |
|
Jens-Arne Reumschüssel | Lo son una neue Versión, el anders con el internen Messagehandling umgeht. Bitte probier el veces de. Tal vez el problema así Fijo. |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 24.09.2022 ▲ |
|
|
|
|
|
funkheld | ¡Hola danke para deine Arbeit , el hört se con Purebasic bien a.
Werden de Purebasic auch una DLL erstellt como en Freebasic?
Gracias para deine Ayuda.
Werde lo testen como se verhält. Yo spiele seit 10 Jahren con Purebasic.
Das FreeBasic una Schwierigkeit ha en Neueinsteigeren , Me estoy dando dir bastante. Das Freebasic saber Yo auch bien , aber así richtige Freundschafft es no zustande genommen.
Gruss |
|
|
| |
|
|
|
funkheld | ¿Por qué se Por favor, jedesmal el Purebasiccompiler rausgeschmissen?
Kommt siempre el Meldung el el PB-Compiler No se ha encontrado se .
Gracias. |
|
|
| |
|
|
|
funkheld | hm... |
|
|
| |
|
|
|
Jens-Arne Reumschüssel | ¡Hola Funkheld,
mein erstes Problema es, dass Yo offensichtlich tatsächlich no Emails mehr bekomme, si hier alguien algo schreibt. Keine Idea, por qué el así es. Deshalb puede se mi Respuesta desafortunadamente algo verzögern.
Ansonsten: Sí, el pbPROCs erzeugen ebenfalls una DLL, genau como fbPROCs. ¿Por qué con usted el Compiler No se ha encontrado se, erschließt se me en el Moment no. Usted musst en el Optionen de JRPC3 el 32-bit-Compiler de Purebasic angeben. Dann debería el auch gefunden voluntad. Er heißt pbcompiler.exe. Dafür muss uno neben el 64-bit-Versión natürlich auch el 32-bit-Versión de Purebasic installiert haben. Si el alles soweit Haga clic en Aceptar es y siempre todavía Problemas auftauchen, bräuchte Yo Por favor, una vez una Screenshot.
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 | 09.05.2023 ▲ |
|
|
|
|
funkheld | Hier veces el Fotos. 1. PB-Compiler (32Bit) eingegeben.
2. El Antwort kommt entonces , PB-Compiler no como.
Schaue Yo rein es el Eingabefeld de PBasic leer.
es el ! correcto para Starten des Compiliers.
Gruss |
|
|
| |
|
|
|
funkheld | Noch una Fehler.
Gracias. gruss |
|
|
| |
|
|
|
Jens-Arne Reumschüssel | Gracias para el Screenshots! Puh, el war una böser Fehler en Bearbeitung de INI-Archivos. Yo hoffe, el es ahora Fijo. |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 10.05.2023 ▲ |
|
|
|
|
funkheld | Gracias. Diese PB con el Cuerdas funktioniert.
Aber dieses con uno Übergabe y Imprimir...funktioniert no.
Gracias para deine tolle Arbeit , tolle Leistung.
Tal vez könntest Si es usted el con Variblenübergabe y Rückgabe de Ergebnissen erklären. Und el con Bereichsübergaben o Daten con PB en el Zona reinschreiben el uno entonces con Pofan otra vez lesen kann.
El Typen el Variables para PB y Profano son No klar.
Gruss
declarar ProfVar1% Shared'Nur globale Variables! Keine Cuerdas, Arrays, Bereichs- y Hashvariablen!
pbPROC TestProc()
ProfVar1%=ProfVar1%+1'el globale XProfan-Variable "ProfVar1%" es direkt en el pbPROC verfügbar; ellos se direkt manipuliert, d.h. Los cambios son en el XProfan-Programa sichtbar
ENDPROC
ProfVar1%=1
TestProc()
imprimir ProfVar1%'ergibt 2
|
|
|
| |
|
|
|
Jens-Arne Reumschüssel | Hmm... Es me fast una bisschen peinlich, el zuzugeben: Como waren en Umsetzung Peek y Poke vertauscht. Jetzt geht's. Gracias para el Report!
Zu el Variablentypen escribir Yo igual qué. |
|
|
| XProfan X4XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 11.05.2023 ▲ |
|
|
|
|
Jens-Arne Reumschüssel | Zu el Variablentypen:
El Nutzung de Hauptprogramm-Variables en uno pbPROC (oder auch fbPROC) va grundsätzlich sólo encima deren Adresse. Daher puede sólo solche Variables con Shared transferencia voluntad, el una festen Speicherplatz besitzen, el se en gesamte Programmlaufzeit no ändert. Es z.B. en Integervariablen el Fall. No sin embargo z.B. en Cuerdas, porque el bekommen en cada neuen Zuweisung de Texto una bastante neuen Speicherplatz, porque el Longitud sí ändern kann. Bereichsvariablen wiederum haben zwar una festen Speicherplatz, aber PureBasic kann no wissen, como y womit el gedimt fueron. Das kann z.B. auch una Struktur ser. Algo como bekommt uno no automáticamente "rüber". Auch en Arrays weiß PB no, como el definiert es (como viele Dimensionen, como groß).
Für alles, qué no con Shared funktioniert, muss uno also händisch dafür sorgen, dass el pbPROC weiß, qué wo es y cómo darauf zugegriffen voluntad muss. Für Cuerdas übergibt uno Así que el Adresse y sorgt en PB dafür, que un ASCII-String gelesen se, kein Unicode-String, como en PB standardmäßig el Fall es. Wenn uno una String zurückgeben möchte, muss uno auch esta una Pointer transferencia y dafür sorgen, dass el Zona, en el él zeigt, para el Ergebnis groß genug es.
pbPROC StringTest(*en,*out) Protected MeinString$ MeinString$=PeekS(*en,-1,#PB_ASCII) PokeS(*out,"Teststring",-1,#PB_ASCII) ;Rückgabe ENDPROC
Wenn uno viele Cuerdas transferencia möchte, puede ser deren Adressen en un einzige Stringvariable escribir y el pbPROC otra vez extrahieren:
declarar s1$,s2$,s3$,uebergabe$,back#
pbPROC StringTest(*uebergabe,*out) Protected s1$,s2$,s3$,uebergabe$,s4$ uebergabe$=PeekS(*uebergabe,-1,#PB_ASCII) s1$=PeekS(val(StringField(uebergabe$,1,"|")),-1,#PB_ASCII) s2$=PeekS(val(StringField(uebergabe$,2,"|")),-1,#PB_ASCII) s3$=PeekS(val(StringField(uebergabe$,3,"|")),-1,#PB_ASCII) s4$=s1$+" "+s2$+" "+s3$ PokeS(*out,s4$,-1,#PB_ASCII) ENDPROC
cls s1$="String 1" s2$="String 2" s3$="String 3" uebergabe$=@str$(@addr(s1$))+"|" uebergabe$=uebergabe$+@str$(@addr(s2$))+"|" uebergabe$=uebergabe$+@str$(@addr(s3$)) dim back#,1000 'groß genug hacer StringTest(@addr(uebergabe$),back#) imprimir @cadena$(back#,0) disponer back# waitinput end
|
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 11.05.2023 ▲ |
|
|
|
|
Jens-Arne Reumschüssel | Wenn uno sólo una vez cierto Dinge transferencia möchte, el entonces en allen pbPROCs disponible posición, entonces puede ser el con globalen PB-Variables tun. Alles, qué zwischen PBGLOBAL y PBENDGLOBAL es, se en el Haupttext el DLL geschrieben, es also global. Dort debería sólo Variablendeklarationen posición, kein "richtiger" Code. Yo dar globale Variables siempre una führenden Unterstrich, así uno globale y lokale Variables mejor auseinanderhalten kann, aber notwendig es el natürlich no:
declarar _Name$,_Alter%
PBGLOBAL Global _Name$,_Alter.i ENDPBGLOBAL
pbPROC GetGlobalVars(*name,alter.i) _Name$=PeekS(*name,-1,#PB_ASCII) _Alter=alter ENDPROC
pbPROC pbPROC1() MessageBox_(0,"pbPROC1:"+chr(13)+_Name$,str(_Alter),0) ENDPROC
pbPROC pbPROC2() MessageBox_(0,"pbPROC2:"+chr(13)+_Name$,str(_Alter),0) ENDPROC
cls _Name$="Max Mustermann" _Alter%="55" GetGlobalVars(@addr(_Name$),_Alter%) pbPROC1() pbPROC2() waitinput end
|
|
|
| XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM PM: jreumsc@web.de | 11.05.2023 ▲ |
|
|
|
|
funkheld | ¡Hola, danke para deine Ayuda.
Wenn du todavía weitere Ideen hast el uno braucht para PB entonces Por favor, siempre her así.
Un Bereichsvariable con 1000 Integer möchte Yo todos con 6 einzeln Multiplizieren en PB y otra vez zurückschreiben en el Bereichsvariable.
Como va el Por favor,?
Como va el con Float-Variables ?
Oder muss una neue Bereichsvariable erstellt voluntad? Was es como pracktischer ?
Gracias para deine Ayuda.
Gruss |
|
|
| |
|
|