Macros/ScriptForge/IsXRayInstalledQuickwin
Appearance
< Macros | ScriptForge
Xray is not an extension, but a Basic library installed at will. Suffice to test Xray's library presence.
Function isXRayInstalled As Boolean
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
fs = CreateScriptService("ScriptForge.FileSystem")
isXrayInstalled = fs.FolderExists(fs.BuildPath(fs.ConfigFolder, "basic/XrayTool"))
End Function
from scriptforge import CreateScriptService
def isXrayInstalled():
fs = CreateScriptService("ScriptForge.FileSystem")
return fs.FolderExists(fs.BuildPath(fs.ConfigFolder, "basic/XrayTool"))
ScriptForge.Platform.Extensions property lists all installed extension identifiers. Extension identifiers are stored in description.xml file located in .oxt compressed files.
Sub Main
Print isOxtInstalled( "apso.python.script.organizer" )
End Sub
Function isOxtInstalled(oxtID As String) As Boolean
Dim id As String, p As Object
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
p = CreateScriptService("ScriptForge.Platform")
For Each ID in p.Extensions
If ID = oxtID Then
isOxtInstalled = True : Exit For
EndIf
Next ' extension ID
End Function
from scriptforge import CreateScriptService as getSvc
def quidAPSO():
util = getSvc("ScriptForge.Basic")
util.MsgBox( isOxtInstalled('apso.python.script.organizer') )
def isOxtInstalled(oxtID: str):
p = getSvc("ScriptForge.Platform")
return oxtID in p.Extensions