Deutsch
C ++ Forum

ProfanInspector 2.0

 
- Seite 1 -



Sebastian
König
Hallo,

gerade habe ich ProfanInspector Version 2.0 fertiggestellt. Darin werden nun die mit XProfan 11 eingeführten Erweiterungen unterstützt und außerdem ein paar Dinge mehr erkannt - unter anderem ungültige Escape-Sequenzen...

Den Download gibt es auf der Profan2Cpp-Homepage oder einfach direkt im Anhang dieses Beitrags.

Ich wünsche allen Frohe Ostern!

MfG

Sebastian

Download Aktuelle Version: 2.0e  [...] 

286 kB
Kurzbeschreibung: Version 2.0e
Hochgeladen:26.07.2008
Ladeanzahl415
Herunterladen
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
23.03.2008  
 



 
- Seite 3 -



Sebastian
König
Stimmt - hätte ich direkt so machen sollen...
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
01.04.2008  
 




Christian
Schneider
Mal ne kleine Anregung: Ich persönlich fände es aus gegebenem Anlass super wenn auch überprüft würde, ob eine Funktion per importfunc den gleichen Namen hat wie eine Proc (hat mich gestern 3 Stunden Schlaf gekostet ;) ). Der Interpreter hat es noch geschluckt, aber in der Runtime war dann Schluss - sonst wärs mir wahrscheinlich direkt aufgefallen. Vielleicht kannst der Inspektor anderen in Zukunft diesen (zugegebenermaßen dummen) Fehler ersparen
 
XProfan 11| Vista(64) SP2
01.04.2008  
 




Michael
Wodrich
So dumm ist das gar nicht.
Denken wir da einfach mal an ImportDLL.

Bei vielen Funktionen kann immer mal eine dabei sein, die schon vorhanden ist.

Oder in der Hilfe ein großes Schild aufhängen:

Obwohl der Alias auch ein Leerstring sein darf, sollten Sie aus gesundheitlichen Gründen NICHT darauf verzichten.

Schöne Grüße
Michael Wodrich

P.S.: Manchmal ist der Sig-Generator ja ein richtiger Spaßvogel - stand da doch drunter: XProfan mobbt Dich nicht!
 
Programmieren, das spannendste Detektivspiel der Welt.
01.04.2008  
 




RGH
Hallo,
bei ImportDLL wird der Profan-Inspector aber wenig ausrichten können, da er ja nicht unbedingt weiß, welche Funktionen in einer zur Laufzeit des Programmes geladenen DLL drin sein werden.
Aus genau diesem Grund erfolgt in XProfan 11 die Fehlermeldung Funktion nicht vorhanden! ja auch erst zur Laufzeit und nicht schon wie bisher beim Compilieren.

Gruß
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
02.04.2008  
 




Sebastian
König
Da war Roland schneller als ich und hat natürlich völlig recht...

Welche Funktionen vorhanden sind, weiß man in der Tat erst zur Laufzeit des Programms und kann durch den Inspector, der ja quasi auf der Ebene des Compilers arbeitet, nicht festgestellt werden. (Aus dem gleichen Grund wird übrigens die Meldung E0020 komplett deaktiviert, wenn irgendwo im Code ein ImportFunc() oder ImportDLL() steht.)

Eine kleine Möglichkeit zur Überprüfung fällt mir allerdings ein: Wenn bei einem ImportFunc() für den Namen der Funktion ein Literal übergeben wird (was wohl der Normalfall sein dürfte - wer generiert solche Namen schon zur Laufzeit?), könnte dies im Prinzip durch den Inspector geprüft und ggf. eine W0012-Meldung erzeugt werden. Ich werde mich mal darum kümmern...

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
02.04.2008  
 




Sebastian
König
Noch ein Nachtrag zu Michaels Posting: Wenn man nicht gerade sehr viele Funktionen aus einer DLL benötigt, würde ich empfehlen, die wirklich benötigten einzeln mit ImportFunc() zu linken, da für jeden Aufruf immer eine Liste mit allen vorhandenen Funktionen durchsucht werden muss. Und das Suchen in kleinen Listen ist natürlich immer schneller...
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
02.04.2008  
 




Dieter
Zornow
Ich habe gerade festgestellt, dass der Inspector in einem Programm mit Procs in der Proc ein fehlendes Endif nicht erkennt. Er meldet stattdessen Endproc unerwarter, Fehler in der Struktur.
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
19.07.2008  
 




Sebastian
König
Dieter Zornow
Ich habe gerade festgestellt, dass der Inspector in einem Programm mit Procs in der Proc ein fehlendes Endif nicht erkennt. Er meldet stattdessen Endproc unerwarter, Fehler in der Struktur.


Hallo Dieter,

danke für den Hinweis! Ich werde mal nachsehen, was da schiefläuft.

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
19.07.2008  
 




Sebastian
König
Nachtrag: Als ich den Fehler gerade nachvollziehen wollte, fiel mir auf, dass die Meldung so wahrscheinlich sogar in Ordnung ist... Es wird immer die Anweisung moniert, die unerwartet auftaucht. Im folgenden Beispiel wäre das "endproc unerwartet."

Entspricht das in etwa der Situation in Deinem Code, Dieter?

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
20.07.2008  
 




Dieter
Zornow
Ja die Situation ist in etwa die gleiche, ich habe nur noch procs in der Proc

ich denke aber die Meldung ist nicht richtig. Zuerst müsste er feststellen, dass beim Beenden der Proc das Endif fehlt, diesen Fehler müsste er schon monieren wenn er zu endproc kommt. So weiß man ja nicht wo der Fehler aufgetreten ist und sucht und sucht. In größeren Programmen kann man sich den Wolf suchen. Zum Glück merkt XProfan, dass das Endif fehlt, sodass man den Fehler schnell findet. Die Meldung des Inspectors ist dagegen irreführend und meiner Meinung nach falsch, da der den ersten Fehler übersieht.

Gruß

Dieter
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
20.07.2008  
 




Sebastian
König
Dieter Zornow
Ja die Situation ist in etwa die gleiche, ich habe nur noch procs in der Proc

ich denke aber die Meldung ist nicht richtig. Zuerst müsste er feststellen, dass beim Beenden der Proc das Endif fehlt, diesen Fehler müsste er schon monieren wenn er zu endproc kommt. So weiß man ja nicht wo der Fehler aufgetreten ist und sucht und sucht. In größeren Programmen kann man sich den Wolf suchen. Zum Glück merkt XProfan, dass das Endif fehlt, sodass man den Fehler schnell findet. Die Meldung des Inspectors ist dagegen irreführend und meiner Meinung nach falsch, da der den ersten Fehler übersieht.


Die Art der Meldung ergibt sich aus der Art und Weise, wie nach dem Fehler gesucht wird (Stack für alle Blöcke; bei einem end...-Befehl wird geguckt, ob er zur aktuellen Spitze des Stacks passt). Wenn der if-Block im Beispiel noch in einer Schleife enthalten wäre, würde man als Fehler "endwhile unerwartet" bekommen...

Als Lösung könnte ich zusätzlich noch anzeigen, welche Art von Anweisung stattdessen erwartet wird (die Information steht ja zur Verfügung). Was hältst Du von dem Vorschlag?

MfG

Sebastian

P.S.: Mir fällt gerade ein, dass dieser Hinweis bei einer längeren Liste von "... unerwartet"-Meldungen nur für den ersten Eintrag sinnvoll ist. In der aktuellen Version ist es ja so, dass ein Fehler in der Verschachtelung unter Umständen einen ganzen Schwanz solcher Meldungen nach sich zieht. Am besten ändere ich dieses nicht besonders sinnvolle Verhalten gleich mit...
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
20.07.2008  
 




Dieter
Zornow
Ja eine Meldung wie

"endproc unerwartet, Endif erwartet" würde Klarheit schaffen.

Gruß

Dieter
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
20.07.2008  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

50.865 Betrachtungen

Unbenanntvor 0 min.
boh124.11.2020
p.specht19.05.2020
iF10.09.2014

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