Deutsch
SDK-Helfer/ Tools

JRPC neuer Präkompiler für XProfan X4 - JRPC3

 
- Seite 1 -



Jens-Arne
Reumschüssel
Guten Abend zusammen,

ich bin kürzlich über das Problem gestolpert, dass XPSE eine ziemlich große Quelldatei von mir nicht mehr verarbeiten konnte. Variablen wurden plötzlich als nicht definiert gemeldet und andere "erratische" Probleme mehr. Ich könnte 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 für Operatoren und alte Containerfunktionen
*extrem schnelle native fbPROCs, sofern man FreeBasic installiert hat (kostenlos, siehe Hilfe)
*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 über @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 DLLs 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 natürlich nicht in XProfan geschrieben, da eine interpretierte Sprache hierfür naturgemäß viel zu langsam ist)
*beim Start von JRPC3 bereits vorhandene .prc-Dateien 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 (Hilfe --> online nach Updates suchen)
*64- oder 32-bit-Version verfügbar (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 natürlich keine 64-bit-XProfan-Programme, da XProfan das nicht kann, sondern JRPC3 selbst wird als 64-bit-Programm ausgeführt
*XProfan X4-Syntax verfügbar (möglicherweise noch nicht alles, da ich vermutlich 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 ausgeführt werden
*Interpreter, PRCs, EXEs und XPSE können mit Administratorrechten ausgeführt werden
*Prozeduren, die in dem aktuellen Programm zwar enthalten sind, aber nicht verwendet werden, werden aus der umgesetzten Datei entfernt, um die Dateigröße des Kompilats möglichst klein zu halten
*Variablen, die in dem aktuellen Programm zwar enthalten sind, aber nicht verwendet werden, werden aus der umgesetzten Datei entfernt, um die Dateigröße des Kompilats möglichst 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 verfügbar 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 übergeben, 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 Hilfe --> Hilfedatei anzeigen oder mit F1 verfügbar ist.

----- /Features

Herunterladen und installieren:
JRPC3 kann unten heruntergeladen werden (setup_jrpc3.exe oder als ZIP-Datei).
Als Installationsverzeichnis bitte das XProfan-Stammverzeichnis angeben, also dasjenige, in dem die Dateien PROFAN.EXE, PROFCOMP.EXE, PRFRUN32.EXE etc. liegen. Alternativ kann die ZIP-Datei 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 anzeigen 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 großen 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 Autoren, die jeder so ihre Eigenheiten haben, auch funktioniert.

Fehlermeldungen und Verbesserungsvorschläge gerne an jreumsc@web.de oder hier im Forum.

Beste Grüße, Jens-Arne

2.584 kB
Bezeichnung:JRPC3
Version:10.29
Kurzbeschreibung: JRPC3-Installer
Hochgeladen:15.02.2021
Ladeanzahl363
Herunterladen
1.699 kB
Bezeichnung:XProfEd_JR
Version:5.2
Kurzbeschreibung: Alte Version ohne AutoComplete zur Sicherheit
Hochgeladen:15.02.2021
Ladeanzahl224
Herunterladen
3.777 kB
Bezeichnung:JRPC3
Version:10.29
Kurzbeschreibung: ZIP-Datei statt Installer
Hochgeladen:02.04.2021
Ladeanzahl291
Herunterladen
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
16.02.2021  
 



 
- Seite 16 -


« Dieser Beitrag wurde als Lösung gekennzeichnet. »

- Seite 15 -



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 X4
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
24.09.2022  
 




Jens-Arne
Reumschüssel
Ok, super, da bin ich gespannt. Immer, wenn jemand neues mit größeren Programmen kommt, tauchen Problemstellungen auf, die es so für mich noch nie gab, weil jeder anders programmiert. Noch schöner wär's natürlich, wenn es einfach laufen würde, aber mal abwarten. Wenn man ein Programm von Anfang an mit JRPC3 entwickelt, funktioniert natürlich alles, weil man es gleich so macht, wie es "sein muss", damit es damit läuft. Aber 12.000-Zeilen-Codes, die ohne geschrieben wurden... Wie gesagt, ich bin gespannt.

Und wenn ich Dein Testprogramm mit dem XProfan-Logo sehe, könnte Dich vielleicht DATA und insbesondere DATAFILE interessieren, vielleicht auch {$APPENDFILE2EXE ...} (einfach in der Hilfe zu JRPC3 nachsehen, dazu F1 bei laufendem JRPC3 drücken).

Gruß, Jens-Arne
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
24.09.2022  
 




RudiB.
Hallo Jens-Arne,

Hier mal zwei "Fehler" die mir aufgefallen sind.

in einer Proc funktioniert dieses z.B nicht:
Var Int A=1

Hier kommt die Fehlermeldung Variable xx nicht deklariert !
sondern nur:
Var A%=1

oder
Declare Int A : A=1

als zweites werden, wenn an eine Proc mehrere Parameter übergeben werden, nicht alle Parameter übernommen. Dies ist aber nur der Fall wenn in dieser Proc nicht alle übergebenen Variablen vorkommen (z.B: weil ich kurzfristig Zeilen auskommentiert habe) Xprofan verkraftet das und verarbeitet richtig, beim JRPC3 übernimmt er nur die Variablen als Parameter die auch in der Proc vorkommen (was ja eigentlich auch richtig ist)
Hier ein Beispiel-Code.
Cls

Proc Test

    parameters a%,b%,c%,d%,e%
    Declare z%
    'print a%
    'Print b%
    'Print c%
    Print d%
    Print e%
    z%=100
    Print z%

Endproc

Test(5,10,15,20,25)
waitinput

es wird ausgegeben 20 - 25 - 100 (XProfan)
es wird ausgegeben 5 - 10 - 100 (JRPC3)

Das kann natürlich im Programm schon zu Fehlern führen...
 
XProfan X4
Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
25.09.2022  
 




RudiB.
Hier noch ein komisches Verhalten von JRPC3

Im folgenden Beispiel wird ein Fenster animiert ausgblendet (bei XProfan)
Window 100,100-400,400
cls
Def SetLayeredWindowAttributes(4) !"USER32","SetLayeredWindowAttributes"' Fenster animiert ausblenden
'-----------------------------------------------------------------------------------------------------------------------
'          Fenster animiert ausblenden
'-----------------------------------------------------------------------------------------------------------------------

Proc ExitAnimated

    Parameters Int Hwnd,Int time
    Var i%=100

    While i%>=2

        i%=i%-4
        External("USER32","SetWindowLongA",Hwnd, -20, External("USER32","GetWindowLongA",Hwnd,-20) | $80000)
        SetLayeredWindowAttributes(Hwnd, 0, (255 * i%) /100, $2)
        Sleep (time/5)

    EndWhile

    showwindow(Hwnd,0)
    destroywindow(Hwnd)

EndProc

'Hauptprogramm
waitinput
ExitAnimated(%Hwnd,100)

mit JRPC3 gibts ein ruckliges flackern....
 
XProfan X4
Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
25.09.2022  
 




Jens-Arne
Reumschüssel
Gleich mal zum letzten Problem:

Das Flackern tritt auch bei XProfan auf, wenn man die Funktion, die Du mit DEF definiert hast, als external-Zeile schreibt. Das muss also - aus welchen gottgegebenen Gründen auch immer - eine DEF-Funktion sein, damit es funktioniert. Abhilfe in JRPC3 schafft daher die Compilerdirektive {$NODEF2EXTERNALCONVERSION}.

Und zum zweiten:

Es ist gewollt, dass alle Variablen, die deklariert, aber nirgends benutzt werden, eliminiert werden, um Speicherplatz zu sparen und die EXE-Datei etwas kleiner zu machen. Das kann man aber ebenfalls abschalten: {$NOVAREXCLUDE}.

Das mit Variablen ohne Suffix bei VAR sehe ich mir an.
 
XProfan X4
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
25.09.2022  
 




Jens-Arne
Reumschüssel
So, das Problem beim Ausschluss nicht genutzter suffixloser VAR-Variablen ist nun behoben.

Allerdings habe ich das mit Parameters jetzt erst richtig verstanden. Offenbar sollte man den Ausschluss bei Parameters-Zeilen deaktivieren. Ich denke da mal drüber nach.
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
25.09.2022  
 




Jens-Arne
Reumschüssel
Ich habe das Entfernen nicht genutzter Variablen aus Parameters-Zeilen jetzt tatsächlich deaktiviert. Das ist bei temporären Auskommentierungen nämlich in der Tat ein Problem und darf deshalb nicht sein.

Warum das Entfernen nicht genutzter Variablen übrigens nicht nur eine Spielerei ist, sondern Laufzeitvorteile bietet, kann man an diesem Beispiel sehen:

{$NOVAREXCLUDE}

declare tc&

PROC TestProc1
declare i1%,i2%,i3%,i4%,i5%,i6%,i7%,i8%,i9%,i10%,i11%,i12%,i13%,i14%,i15%,i16%,i17%,i18%,i19%,i20%
ENDPROC

PROC TestProc2
ENDPROC

cls
tc&=&gettickcount
whileloop 1,10000
TestProc1
endwhile
print &gettickcount-tc&
tc&=&gettickcount
whileloop 1,10000
TestProc2
endwhile
print &gettickcount-tc&
waitinput
end

Im Interpreter ist der Unterschied schon deutlich zu sehen, kompiliert ist er immens. Allein die Speicherbereitstellung für nicht genutzte Variablen kostet eben Zeit.
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
25.09.2022  
 




RudiB.
Hallo Jens-Arne,


Ich habe das Entfernen nicht genutzter Variablen aus Parameters-Zeilen jetzt tatsächlich deaktiviert. Das ist bei temporären Auskommentierungen nämlich in der Tat ein Problem und darf deshalb nicht sein.


Du bist ja beim "Fehler" beheben fast schneller, als ich beim Fehler finden

Und ich sollte mich wirklich mal mehr mit den Optionen von JRPC3 vertraut machen bevor ich hier die Pferde scheu mache. Das mit dem Fenster ausblenden funktioniert so bestens....
JPCR3 gefällt mit immer besser......
 
XProfan X4
Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
25.09.2022  
 




Jens-Arne
Reumschüssel
Die neue Version 8.05 beinhaltet im Wesentlichen einen verbesserten XProfEd_JR, bei dem das Tab-Schließen-Management deutlich erweitert wurde:

- es wird beim Schließen des Programms bei jedem Tab individuell nachgefragt, ob er gespeichert werden soll, wenn der Quelltext darin seit dem Laden/letzten Speichern verändert wurde
- es wird nun auch auf veränderte/umbenannte/gelöschte *Quelldateien* seit dem Laden/letzten Speichern getestet
- Abbruch des Schließens bei veränderten Quelltexten/Quelldateien möglich
 
XProfan X4
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
26.09.2022  
 




RudiB.
Hallo Jens-Arne,

hier mal ein weitere Fehler der bei mir aufgepoppt ist.



Diese Funktion in FreeBasic ist das Gegenstück zu -Translate$- in XProfan.
Läuft bei mir unter Freebasic einwandfrei.
Jedoch JRPC3 scheint Funktionen nicht zu kennen, oder gibts da wieder etwas (eine Option) was ich gelesen oder verstanden habe.

48 kB
Hochgeladen:28.09.2022
Ladeanzahl14
Herunterladen
 
XProfan X4
Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
28.09.2022  
 




Jens-Arne
Reumschüssel
Hallo Rudi,

soweit ich es sehe, steht der FreeBasic-Code nicht innerhalb einer fbProc. Dann denkt JRPC3, es handele sich um XProfan-Code, was er aber nicht ist.

Das hier wird korrekt verarbeitet, führt aber (hierzu sogleich) zu keinem sinnvollen Programmcode:

''''' ACHTUNG nur reines FREEBASIC
fbPROC StrReplace(BYVAL StrEx AS STRING, BYVAL StrMask AS STRING, BYVAL StrRplce AS STRING) AS STRING export
IF LEN(StrEx)=0 OR LEN(StrMask)>LEN(StrEx)
RETURN StrEx
ENDIF

DIM Buffer AS STRING=StrEx
DIM MaskSearch AS UINTEGER
DIM MFound AS BYTE
DIM lp AS UINTEGER=1
DO
MaskSearch=INSTR(lp,Buffer,StrMask)
MFound=0

IF MaskSearch THEN

MFound=1:lp=MaskSearch+LEN(StrRplce)
'''
Buffer=LEFT(Buffer,MaskSearch-1)+ _
StrRplce+ _
RIGHT(Buffer,LEN(Buffer)-(MaskSearch+(LEN(StrMask)-1)))
''
END IF
LOOP WHILE MFound=1
RETURN Buffer
ENDPROC

Hinweise:
- Zwischen Funktionsname und Parameterklammer darf kein Leerzeichen stehen.
- fbPROCs werden als DLL für XProfan zur Verfügung gestellt; es wird kein ganzes FreeBasic-"Programm" erzeugt. Damit könnte XProfan auch gar nichts anfangen.
- DLL-Funktionen, die von außerhalb der DLL aufgerufen werden sollen (nämlich von XProfan), können nur 32-Bit-Integerparameter haben, keinesfalls Strings, und im Falle von XProfan sowieso keine Strings, die nicht nullterminiert sind (ZSTRING wäre der korrekte Parameter, der nullterminiert ist). Das ist bei allen DLLs so. Es müssten daher Pointer auf ZSTRINGs definiert werden (die dann z.B. mit @addr(s$) aus XProfan übergeben werden).
- Man könnte diese Funktion aber (ohne export) intern in der DLL verwenden, dann auch mit nur STRING als Parameter. Dann müsste man aber eine weitere Funktion definieren, die die Kommunikation mit XProfan übernimmt, mit export gekennzeichnet ist und nur Pointer auf ZSTRINGs verwendet (die haben 32 Bit).
- Wenn es keine einzige fbPROC mit export gibt, wird die DLL nicht erzeugt, weil es dann keine Funktion gäbe, die von außen für XProfan erreichbar wäre.
- Dein Code hatte einige Eigenarten, die bei mir nicht verarbeitet wurden, z.B. eine IF-Zeile ohne END IF (sowas wie Case in XProfan). Vielleicht haben wir unterschiedliche Versionen von FreeBasic?

Gruß, Jens-Arne
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
28.09.2022  
 




Jens-Arne
Reumschüssel
Das hier zum Beispiel funktioniert:

''''' ACHTUNG nur reines FREEBASIC
fbPROC StrReplace(BYREF StrEx AS ZSTRING, BYREF StrMask AS ZSTRING, BYREF StrRplce AS ZSTRING, BYVAL Ret AS ZSTRING POINTER) AS INTEGER export

IF LEN(StrEx)=0 OR LEN(StrMask)>LEN(StrEx)
*Ret=StrEx
RETURN 0
ENDIF

DIM Buffer AS STRING=StrEx
DIM MaskSearch AS UINTEGER
DIM MFound AS BYTE
DIM lp AS UINTEGER=1
DO
MaskSearch=INSTR(lp,Buffer,StrMask)
MFound=0

IF MaskSearch THEN

MFound=1:lp=MaskSearch+LEN(StrRplce)
'''
Buffer=LEFT(Buffer,MaskSearch-1)+ _
StrRplce+ _
RIGHT(Buffer,LEN(Buffer)-(MaskSearch+(LEN(StrMask)-1)))
''
END IF
LOOP WHILE MFound=1
*Ret=Buffer
RETURN 0
ENDPROC

declare s1$,s2$,s3$,erg$

cls
s1$="Teststring"
s2$="e"
s3$="a"
erg$="12345678901234567890" 'groß genug vordefinieren
StrReplace(@addr(s1$),@addr(s2$),@addr(s3$),@addr(erg$))
print erg$
waitinput
end

Weil die Parameter alle ByRef-Parameter sind, werden die Adressen auf die Strings (=32-Bit-Werte) übergeben.
 
XProfan X4 * Prf2Cpp * XPSE * JRPC3 * Win11 Pro 64bit * PC i7-7700K@4,2GHz, 32 GB RAM
PM: jreumsc@web.de
29.09.2022  
 




RudiB.
Ich häng mal meine FreeBasic Datei an und ein Test mit Xprofan.
In der Freebasic-Datei wird eine "Profan-Datei" geladen und verarbeitet und als Verarbeitete Datei gespeichert. Pfade und Datei-Namen bitte selber anpassen/ändern.
Was passiert in diesem Ablauf ??
Programmzeilen mit Backslash am Ende z.B:
Struct Test= Hund&,\
Katze&,\
Maus&,\
Wal&

werden zu einer Programmzeile - Struct Test= Hung&,Katze&,Maus&,Wal& zusammengefasst.
Ganzzeilige Kommentare und Blockkommentare werden in Leerzeilen umgewandelt.
Befehlszeilen die mit einem Doppelpunkt in einer Zeile getrennt sind werden auf einzelne Zeilen aufgesplittet.
z.B: If Test=0:Test=5:Endif
If Test=0
Test=5
Endif
...na ja
und die Profan-TestDatei öffnet bzw. soll den Datei-Dialog aufrufen es wird eine Datei ausgewählt. Dieser Dateiname wird an die fbProc übergeben dort verändert und zurückgegeben.

Meine FreeBasic-Vers.: FreeBASIC-1.09.0-winlibs-gcc-9.3.0

7 kB
Hochgeladen:29.09.2022
Ladeanzahl22
Herunterladen
7 kB
Hochgeladen:29.09.2022
Ladeanzahl17
Herunterladen
 
XProfan X4
Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
29.09.2022  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

63.077 Betrachtungen

Unbenanntvor 0 min.
Jens-Arne Reumschüssel vor 4 Tagen
Manfred Barei25.09.2024
Gast.081529.08.2024
R.Schneider23.08.2024
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie