====== Versionskontrolle ======
\\ Manche FF-Skriptbefehle stehen erst ab einer bestimmten FixFoto-Version zur Verfügung (s. [[/Befehlsreferenzen|Befehlsreferenz]]), sodass auf die jeweils laufende Version geprüft werden muss.\\ //VBScript//\\
if not Version_equal_or_better("3.02.22") then
Msgbox "Es ist mindestens die FF-Version 3.02 build 22 erforderlich."
Exit Sub
End if
' ** Versionskontrolle **
Function Version_equal_or_better(p_Vers)
Dim l_VersNr
l_VersNr=split(p_Vers,".")
version_equal_or_better=(FF_GetMajor*1000+FF_GetMinor+FF_GetBuild/1000 >= l_VersNr(0)*1000+l_VersNr(1)+l_VersNr(2)/1000)
End Function
Um festzustellen, ob FixFoto in der 32-Bit oder in der 64-Bit-Version läuft, kann die folgende Funktion genutzt werden:\\ //VBScript//
Function Is64Bit()
' gibt True zurück, wenn FF in der 64 Bit-Version läuft
' basiert darauf, dass Xe847 unter 64 Bit nicht verfügbar ist
' Idee: Niels1938
Dim test
test = "a"
FF_NewImage 2, 2, 65535 ' Bild erzeugen, damit XE847 fehlerfrei läuft obwohl Arbeitsfläche ggf. leer ist
On Error Resume Next ' fängt Fehler in der 64 Bit-Version ab
test = FF_Xe847(1)
On Error Goto 0
If test = "a" then
Is64Bit = True ' FF 64 Bit
Else
Is64Bit = False ' FF 32 Bit
End If
End Function
//JScript//
// erst mal wird von 32bit ausgegangen...
var bit = "32bit";
// ein Bild wird erzeugt, damit, falls in FF keines auf der Arbeitsfläche sein sollte, XE847 ohne Felhermeldung aufgerufen werden kann
FF_NewImage(2, 2, 65535);
// XE 847 wird ausprobiert (try) und falls es nicht funzt, (catch (e)) wird bit auf "64bit" gesetzt
try {FF_Xe847(1);} catch(e){bit = "64bit";}
ff_messagebox("FixFoto läuft in " + bit ,64);