PureBasic identifizieren

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Frabbing
Beiträge: 160
Registriert: 15.02.2007 21:31
Kontaktdaten:

PureBasic identifizieren

Beitrag von Frabbing »

Zum Thema Quellcode-Erkennung: Was meint ihr, mit welchen Befehlen/Funktionswörtern lässt sich ein PureBasic-Quellcode am besten identifizieren? Was fehlt in quasi keinem Code?
Gruß, Frank
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PureBasic identifizieren

Beitrag von RSBasic »

Wenn die Datei mit dem PB-Editor erstellt wurde, dann am Ende der Datei:
; IDE Options = PureBasic [...]
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
cxAlex
Beiträge: 2111
Registriert: 26.06.2008 10:42

Re: PureBasic identifizieren

Beitrag von cxAlex »

Zumindest wenn die PB - IDE verwendet wird (über JaPBE usw. kann ich jetzt nichts sagen) steht am Ende jedes Quellcodes sowas:

Code: Alles auswählen

; IDE Options = PureBasic 4.60 Beta 3 (Windows - x64)
; CursorPosition = 277
; FirstLine = 36
; Folding = gY---+-
; EnableXP
; CPU = 1
Einige Einstellungen, bzw. letzte bearbeitete Zeile des Quellcodes. Damit sollte sich eine ein PB - Sourcefile eigentlich so halbwegs identifizieren lassen. Wobei man das wohl besser über die Datei - Endung (pb/pbi) machen sollte.

Gruß, Alex

//Edit:
@RSBasic: Ah, da hat sich was überschnitten, warst schneller als ich
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

Bild

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Benutzeravatar
Frabbing
Beiträge: 160
Registriert: 15.02.2007 21:31
Kontaktdaten:

Re: PureBasic identifizieren

Beitrag von Frabbing »

Nein, nur der reine Quellcode, ohne Zusatzinfos vom Editor. :D
Gruß, Frank
Benutzeravatar
cxAlex
Beiträge: 2111
Registriert: 26.06.2008 10:42

Re: PureBasic identifizieren

Beitrag von cxAlex »

Naja, dann kannst du wirklich nur Schlüsselwörter zählen, (If/Select/Procedure/....) aber wenn du das ganze von anderen Source-Files unterscheiden bin ich mir sicher das der eine oder andere Basic Dialekt mit reinrutscht. Wenn du uns sagen könntest für was du das machen willst könnten wir dir besser helfen, bzw. einen anderen, (besseren) Weg finden.

Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

Bild

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PureBasic identifizieren

Beitrag von RSBasic »

Das kann man schlecht sagen, da jeder Quellcode anders aufgebaut ist. Wenn bei PB "EnableExplicit" ein fester Bestandteil wäre, hätte ich das vorgeschlagen. Du kannst vielleicht nach "#PB_" suchen, aber es gibt auch Quellcodes, in denen gar keine PB-Konstanten verwendet werden.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Nino
Beiträge: 1300
Registriert: 13.05.2010 09:26
Wohnort: Berlin

Re: PureBasic identifizieren

Beitrag von Nino »

Frabbing hat geschrieben:Was fehlt in quasi keinem Code?
Ich wüsste nicht, dass es so etwas gibt. Allerdings kommen meiner Einschätzung nach folgende Schlüsselwörter häufig vor und sind für PB recht typisch:

Code: Alles auswählen

(X)IncludeFile
EndIf
ProcedureReturn
EndProcedure
Meiner persönlichen Erfahrung nach (die nicht repräsentativ sein muss) lauten diese Schlüsselwörter in anderen Sprachen eher:

Code: Alles auswählen

Include
End If (zwei Wörter)
Return
End Procedure (zwei Wörter) oder z.B. End Sub, }
Grüße, Nino
Benutzeravatar
Frabbing
Beiträge: 160
Registriert: 15.02.2007 21:31
Kontaktdaten:

Re: PureBasic identifizieren

Beitrag von Frabbing »

Da sind schon einige gute Anregungen dabei.

Um mal näher zu erklären. Ich schreib gerade an einem Editor, der im Besonderen für XProfan, PureBasic und Assembler geeignet sein soll, weil ich in diesen Sprachen programmiere. Hat den Vorteil, dass ich nur noch einen Editor benötige. Der Editor soll - wenn möglich - selber erkennen, welche Programmsprache gerade vorliegt und die passenden Syntax / Falten-Dateien verwenden und den richtigen Kompiler wählen. Deswegen soll er beim Parsen (was er eh schon macht) auf bestimmte Schlüsselwörter achten. So die Ausgangslage. :-)
Gruß, Frank
Benutzeravatar
Frabbing
Beiträge: 160
Registriert: 15.02.2007 21:31
Kontaktdaten:

Re: PureBasic identifizieren

Beitrag von Frabbing »

Ich denke, mit der Prüfung auf openwindow und endprocedure bin ich auf der richtigen Seite.
Danke für eure Anregungen! :D
Gruß, Frank
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: PureBasic identifizieren

Beitrag von ts-soft »

Frabbing hat geschrieben:Ich denke, mit der Prüfung auf openwindow und endprocedure bin ich auf der richtigen Seite.
Danke für eure Anregungen! :D
Ich denke, das ist zu wenig :wink:
Manche Einsteiger verwenden keine Proceduren und keine Fenster.
OpenConsole und #PB_ würde ich noch hinzunehmen!

Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten