PBXB64 COM & Automation

COM & Automation PBXB64-Erweiterung

Volle COM-Unterstützung with VARIANT, OBJECT, GUID, and IDispatch-Automation. COM-Objekte erstellen, Methoden via Vtable-Dispatch aufrufen, and VARIANT-Rückgabewerte behandeln. Typensicher und speichersicher with automatisches Referenzzählen.

VARIANT - COM-kompatible Werte

VARIANT type switching
FUNCTION PBMAIN() AS LONG LOCAL v AS VARIANT v = 42 ' VT_I8 PRINT VARIANTVT(v) ' 20 v = "Hello" ' VT_BSTR PRINT VARIANTVT(v) ' 8 v = 3.14159 ' VT_R8 PRINT VARIANTVT(v) ' 5 FUNCTION = 0 END FUNCTION

VARIANT stores any COM-compatible type: integers (VT_I8), floats (VT_R8), strings (VT_BSTR), booleans (VT_BOOL), currency (VT_CY), and empty (VT_EMPTY). Arrays are supported with element-wise lifecycle management.

OBJECT - COM-Objekt-Referenzen

COM object creation
FUNCTION PBMAIN() AS LONG LOCAL obj AS OBJECT LOCAL result AS VARIANT ' Create COM object by ProgID obj = CreateObject("Scripting.Dictionary") ' Call method via IDispatch result = obj.Add("key", "value") result = obj.Item("key") PRINT "Value: "; result ' "value" ' GUID support LOCAL g AS GUID g = GUID$("{12345678-1234-1234-1234-123456789ABC}") PRINT "GUID: "; GUID$(g) FUNCTION = 0 END FUNCTION

CreateObject creates COM objects by ProgID. OBJECT supports IDispatch method calls with VARIANT arguments and return values. GUID stores 128-bit UUIDs. Automatisches Referenzzählen (AddRef/Release) bei Zuweisung.

Zurück zur Feature-Liste