| |
|
|
- Seite 1 - |
|
RudiB. | Herunterladen Fehler finden...Variablen automatisch im Programm umbenennen...nach Typen und Arten Filtern....in welcher Zeile und welcher Proc deklariert......welche Systemvars werden genutzt ......und ich hab da noch einige Ideen, die ich noch einbauen möchte.
Ich bastle gerade an einem Tool um eine bessere Übersicht der Variablen in einem Programm zu bekommen....
Ist soweit wie oben beschrieben lauffähig.....bin noch in der Testphase um Fehler zu ermitteln (die bestimmt noch auftauchen werden....bin selbst ein Chaosprogrammierer und habs eigentlich nur für ein Projekt von mir geschrieben)
Update zu VAR-FINDER
So...... ich denke die erste Testversion ist fertig und ich stelle sie hier als EXE zum testen ein. Hab das ganze ein wenig angepasst, auf Optischen Schnick-Schnack verzichtet und ich denke das Tool wird laufen....tuts zumindest bei mir. Falls Ihr es testet Bitte ich Euch um Feedback, sei es Kritik,Schelte, auftretende Fehler oder auch Verbesserungs-Vorschläge. Kleine Erklärung zum Programm unter Hilfe.... Ansonsten ist es fast selbsterklärend.
Fast vergessen...erkennt auch Inaktive Variablen, die zwar Deklariert wurden aber im Programm nicht verwendet werden....und doppelt Deklarierte Variablen erkennt er auch......
Gruß Rudi
So....nun noch mal ein Update meines kleinen Tools. Hab mir mit Dank die Konstruktive Kritik und Anregungen von Roland und E.T. zu Herzen genommen und versucht es ein wenig besser zu machen. Ich denke werden noch Fehler drin stecken....jedoch hoffe ich auf Feedback von Euch
Gruß aus München |
|
|
| Xprofan X4 Rudolf Beske / München
Hardware: NB Intel I9 - 16GByte RAM | 14.10.2012 ▲ |
|
|
|
| |
|
- Seite 3 - |
|
|
RudiB. | werde wohl die PROC Doppelte Variable rausnehmen.....wird ja eigentlich schon durch den Inerpreter erkannt... zumindest ab V 11 .....und vor der Version V 11 mault der Interpreter eh nicht...soweit ich weiß?.....Hab leider nur die Freeload-Version 9.1 muss mir aber jetzt dringend X2 kaufen.... |
|
|
| |
|
|
|
RudiB. | werde wohl die PROC Doppelte Variable rausnehmen.....wird ja eigentlich schon durch den Inerpreter erkannt... zumindest ab V 11 .....und vor der Version V 11 mault der Interpreter eh nicht...soweit ich weiß?.....Hab leider nur die Freeload-Version 9.1 muss mir aber jetzt dringend X2 kaufen.... |
|
|
| |
|
|
|
E.T. | Feedback: Schläft mein Rechner schon oder geht der Fenster-Aufbau wirklich langsam ?? Ich kann zuschauen, wie die einzelnen Elemente auf dem HWnd erstellt werden, war (glaub ich) bei der vorigen Version nicht so schlimm. *** Ich bin mir sicher, das ich keine "leeren" Proc's im Programm habe:
*** "Inaktive Variablen" :
Ich pers. arbeite sehr gern mit .inc-Datei'n. Alles, was fertig ist, fliegt raus aus dem Hauptprogramm und wird includiert. Hier jetzt in der .prf alle vermeintlich inakt. Var's zu löschen wäre wohl wie bei'm Roulette : Nichts geht mehr Vlt. dort, wo jetzt "Doppelt deckl. Var" angezeigt werden, die Variablen listen, welche in .inc-Datein verwendet werden (so als Idee). Die includierten Datei'n, Units etc. irgendwo aufzulisten wäre vlt. auch kein Fehler... *** "Doppelt decl. Var" In mehreren Proc's per Parameters festgelegte Übergabe-Werte werden als doppelt declariert angemeckert. *** XPSE-Erkennung: Das Progg könnte erkennen, wenn der Quellcode XPSE-Befehle enthält und daraufhin einen Hinweis einblenden, das dieser Code ggf. nur mit XPSE compiliert werden kann. Werden denn nProc's erkannt ??
...
Ach ja. Die Uhrzeit in der Statuszeile aktualisiert sich nicht, als ist es ja die Programm-Start-Zeit |
|
|
| Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 14.02.2013 ▲ |
|
|
|
|
RudiB. | Hallo E.T.
Danke zunächst für die Hinweise und nützlichen Anregungen. ...ich seh schon, hab noch einen weiten Weg vor mir. (hab noch viel zu lernen )
Hab selbst schon wieder Fehler entdeckt bzw. gewisse Syntax nicht mitbedacht.
werde das ganze nochmal überarbeiten, auch in Bezug auf XPSE
Nur das mit den leeren PROC's kann ich mir beim besten Willen nicht erklären....bei keinem von mir getesteten Quelltexte ist dies vorgekommen.
Gruß Rudi |
|
|
| |
|
|
|
RudiB. | Nochmal ein kleines Update.....
Einige Funktionen sind deaktiviert...darunter auch Speichern...
ist auch nur zum probieren angedacht....überlege auch ob ich das Projekt nicht ganz einstelle..
Programm ist selbstentpackende Exe, erstellt mit Weitergabe-Assistent von Andreas Miethe. Enthalten sind das Programm (Exe), Header, Includes und die Grafiken für das Programm.....das Programm verändert keine Datei..also probieren unbedenklich |
|
|
| |
|
|
|
| Bleibt bei mir einfach gleich nach dem Einladen der Datei stehen:
|
|
|
| |
|
|
|
RudiB. | hmmmm....hast Du es nur mit einem Programm probiert, oder tritt der Fehler bei mehreren auf ??? Auf Deinen Snapshot hin kann sich das Programm nur in zwei Procs aufhängen...
und hier das Listing dazu... KompilierenMarkierenSeparieren
Proc lade_code
DrawPic grün_rot&,0990,0358;-1
usecursor 2
SENDMESSAGE(DATEI_LISTING_anzeige&,$0184,0,0)
SENDMESSAGE(DATEI_LISTING_kopie&,$0184,0,0)
i%=0
zeilen_nummer&=0
Whileloop getcount(datei_include_liste&)
datei$= getstring$(datei_include_liste&,i%)
inc i%
If zeilen_nummer&=0
erste_zeile&=zeilen_nummer&
Else
erste_zeile&=zeilen_nummer&+1
endif
ASSIGN #1,DATEI$
RESET #1
WhileNot EOF(#1)
input #1,zeile$
addstring(datei_listing_anzeige&,zeile$)
addstring(datei_listing_kopie&,zeile$)
INC ZEILEN_nummer&
EndWhile
close #1
letzte_zeile&=zeilen_nummer&
text$=datei$+"("+str$(erste_zeile&)+")"+"("+str$(letzte_zeile&)+")"
addstring(programm_zeilen&,text$)
EndWhile
usecursor 0
DrawPic grün&,0990,0358;-1
EndProc
Proc zeige_units
DrawPic grün_rot&,0990,0358;-1
usecursor 2
ZEILENZäHLER&=0
Whileloop getcount(datei_listing_kopie&)
zeile$=getstring$(datei_listing_kopie&,zeilenzähler&)
INC ZEILENZäHLER&
zeile$=trim$(zeile$)
If (lower$(left$(zeile$,2))="$i") or (lower$(left$(zeile$,2))="$u")
pos&=instr(" ",zeile$)
If pos&=3
zeile$=right$(zeile$,len(zeile$)-pos&)
zeile$=trim$(zeile$)
zeile$=upper$(zeile$)
addstring(liste_units&,zeile$)
EndIf
EndIf
EndWhile
usecursor 0
DrawPic grün&,0990,0358;-1
EndProc
|
|
|
| |
|
|
|
| Schau mal hierbei hängts: KompilierenMarkierenSeparieren {$cleq}
long x,y
decimals 0
window 600,600
windowtitle "oglUI-TestMode-Test"
ogl("init", %HWnd, 255,255,255,1)
mcls 600,600,0
ogl("clear")
ogl("color",1.3,1.3,1.3,1)
ogl("move",0,-.25,-3)
ogl("rotate",45,35,0)
ogl("cuboid",1,1,1)
ogl("show")
whileloop 0, 599, 3
y = &loop
whileloop 0, 599, 3
x = &loop
ogl("starttest",x,y)
ogl("clear")
ogl("move",0,-.25,-3)
ogl("rotate",45,35,0)
ogl("SetName", 1)
ogl("cuboid",1,1,1)
case ogl("endtest") = 1 : setpixel x,y,0
endwhile
settext %hwnd,str$(y/600*100)+"%"
endwhile
string fle=ReadIni$("Hkey_1","Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders","Desktop")+"\\ogl.testmode.test.png"
long hPic = create("hpic",0,"&OGLBMP")
savepic fle, hPic
deleteObject hPic
shellexec(fle,"open",3)
ogl("done")
end
|
|
|
| |
|
|
|
RudiB. | juup....bei mir auch....sch... dann geh ich mal auf Fehlersuche. |
|
|
| |
|
|
|
RudiB. | hab den Fehler gefunden.....ist eigenlich gar keiner...und doch...
ich bin noch nicht mit dem Programm XPSE kompatibel ....auch noch nicht ganz mit X2 muss noch die neue Syntax einbringen wie LONG,INTEGER,MEMORY ...ohne Präfix
Das Programm hängt sich in einer Schleife auf, weil es versucht doppelte Einträge aus einer Listbox zu entfernen die leer ist....Problem wird gelöst !
Füg Deinem Programm einfach mal hinzu...
Declare x%
schon gehts..
...aber nichts desto Trotz....so was darf nicht passieren....also Fehler wird behoben |
|
|
| |
|
|
|
RudiB. | Auf ein neues.......
nun erkennt das Programm, ob ein Profan oder ein XPSE Programm geladen wurde und zeigt es an. Die neue Variablen-Syntax nach X2 ( Longint test, text...) ist implementiert.
Includes und Unit werden auf Wunsch mitgeladen (auch hier habe ich den Namensraum mitbedacht (z.B. $I Test =FRE_)
Einige Funktionen, darunter auch noch speichern, sind deaktiviert....muss erst noch einige Testläufe mehr fahren.
Wer nicht unbedingt die Anzeige von verwendeten Systemvariablen oder der inaktiven Variablen braucht kann die Checkboxen ( VOR DEM LADEN EINER DATEI )deaktivieren, dann ist das Programm am Start schneller.
neues Update,diesmal wieder mit allen nötigen Dateien als selbstenpackende Exe.
Download Bitte um Feedback
Gruß Rudi |
|
|
| |
|
|
|
E.T. | Sieht ja schonmal um einiges besser aus, auch die Variablen scheinen jetzt richtig gelistet zu werden.
Was mir beim Feierabendlichen Kurztest ins Auge gefallen ist :
Einige Edits bzw. Buttons sind zu schmal, die Schrift passt in der Höhe nicht hinein:
... und es fehlen die Unterstriche (_) in Proc- und Var-Bezeichnung (nennen sich bei mir mitgl_neu bzw. mitgl_neu_ende% , mit Leerzeichen würde ja auch Fehler verursachen), vlt. bedingt durch die zu geringe Höhe, oder ein Einlese-Fehler...
Weiter so, das wird ein gutes Tool
Ach ja, bei den 4 Boxen links oben würde ich die Einträge nicht wählbar machen (habe zumindest keinen Effekt feststehlen können), könnte verwirren. Aber nicht einfach "disable'n", das macht so schlecht lesbar. Eher readonly, weis jetzt aber nicht, ob das mit em_SetReadOnly funzt... |
|
|
| XProfan X2Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 26.03.2013 ▲ |
|
|
|