The usage of COM_Invoke():
If it has the form in VBS-like scripts as
Code: | value = Object.Function(param1, param2, ...) ; Method, PropertyGet | it'll be translated like Code: | value := COM_Invoke(Object, "Function", param1, param2, ...) |
And, if Code: | Object.Function(param1, param2, ...) = value ; PropertyPut, PropertyPutRef | then similarly with the above Code: | COM_Invoke(Object, "Function", param1, param2, ..., value) | However, there exist occasions the above simple form becomes ambiguous. In those cases, can force it to use PropertyPut by appending to the function name the artificial suffix "=" like:
Code: | COM_Invoke(Object, "Function=", param1, param2, ..., value) |
There are some occasions where another COM Object ObjPrm should be a parameter. In that case, prefix it with "+" like: Code: | COM_Invoke(Object, "Function", ..., "+" . ObjPrm , ...) ; never directly prefix it like +ObjPrm. | As a consequence, "+0" will play the role of VBS Nothing.
And, "-0" will represent VBS missing parameter. For eample Code: | Object.Function(..., param1, , param3, ...) | in VBS-like scripts can be written as Code: | COM_Invoke(Object, "Function", ..., param1, "-0" , param3, ...) |
Finally, to control the error message pop-up of COM Library, call Code: | COM_Error(b) ; b := 0/1 for off/on |
|
|
|