PureBasic identifizieren
PureBasic identifizieren
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
Re: PureBasic identifizieren
Wenn die Datei mit dem PB-Editor erstellt wurde, dann am Ende der Datei:
; IDE Options = PureBasic [...]
Re: PureBasic identifizieren
Zumindest wenn die PB - IDE verwendet wird (über JaPBE usw. kann ich jetzt nichts sagen) steht am Ende jedes Quellcodes sowas:
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
Code: Alles auswählen
; IDE Options = PureBasic 4.60 Beta 3 (Windows - x64)
; CursorPosition = 277
; FirstLine = 36
; Folding = gY---+-
; EnableXP
; CPU = 1Gruß, 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

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Re: PureBasic identifizieren
Nein, nur der reine Quellcode, ohne Zusatzinfos vom Editor. 
Gruß, Frank
Re: PureBasic identifizieren
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
Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Re: PureBasic identifizieren
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.
Re: PureBasic identifizieren
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:Frabbing hat geschrieben:Was fehlt in quasi keinem Code?
Code: Alles auswählen
(X)IncludeFile
EndIf
ProcedureReturn
EndProcedureCode: Alles auswählen
Include
End If (zwei Wörter)
Return
End Procedure (zwei Wörter) oder z.B. End Sub, }Re: PureBasic identifizieren
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.
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
Re: PureBasic identifizieren
Ich denke, mit der Prüfung auf openwindow und endprocedure bin ich auf der richtigen Seite.
Danke für eure Anregungen!
Danke für eure Anregungen!
Gruß, Frank
- 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
Ich denke, das ist zu wenigFrabbing hat geschrieben:Ich denke, mit der Prüfung auf openwindow und endprocedure bin ich auf der richtigen Seite.
Danke für eure Anregungen!
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.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.


