| |
|
|
| time as small function chkXProfanVersionByExe The as Parameter a Filenames expects and the version number returns: CompileMarkSeparation Umgesetzt based on Information of a Code Roland RGH
CompileMarkSeparationDeclare File$, hDatei&, Version$, Adresse&
CLS
Datei$ = LoadFile $("Profn-Program open:", "*.exe")
If File$ > ""// it watts a File select
hDatei& = Assign(File$)
OpenRW hDatei&// File binary open
Seek hDatei&, $80// on this position standing The address the Compilates
Adresse& = GetLong(hDatei&)
Seek hDatei&, Adresse&// here begins the Compilat
Version$ = GetChar$(hDatei&, 18)
// the first 11 characters are always " RGH-PROFAN"
If Mid$(Version$, 1, 11) <> " RGH-PROFAN"
MessageBox("No with PROFAN² or XProfan erzeugtes Program!", "Hinweis:", 16)
Close hDatei&
End
EndIf
// the 12. characters is the Version the Compilates and can Rückschlüsse on The
// XProfan-Version To
Version$ = Substr$(Version$, 12)
Select Version$
CaseOf "3" : Print "Profan² 5 (32 bit)"
CaseOf "4" : Print "Profan² 5 (32 bit) with $P* verschlüsselt"
CaseOf "5" : Print "Profan² 6 (32 bit)"
CaseOf "6" : Print "Profan² 6 (32 bit) with $P* verschlüsselt"
CaseOf "7" : Print "Profan² 7"
CaseOf "8" : Print "Profan² 7 with $P* verschlüsselt"
CaseOf "9" : Print "XProfan 8"
CaseOf "A" : Print "XProfan 8 with $P* verschlüsselt"
CaseOf "B" : Print "XProfan 9"
CaseOf "C" : Print "XProfan 9 with $P* verschlüsselt"
CaseOf "D" : Print "XProfan 10"
CaseOf "E" : Print "XProfan 10 with $P* verschlüsselt"
CaseOf "F" : Print "XProfan 11 or X2"
CaseOf "G" : Print "XProfan 11 or X2 with $P* verschlüsselt"
Otherwise : Print "Unbekannte Version " + Version$
EndSelect
Close hDatei&
WaitInput
EndIf
End
because of one Fehlers in XPSE concerning the function GetLong by XPSE (momentarily) only with GetWord-Workaround possible: CompileMarkSeparation |
|
|
| |
|
|