Project

General

Profile

Actions

Com Support

/comopen

Added in 1.9.4

/comopen <name> <progid>

Opens a COM connection to object progid and assigns the connection a name.

For 64 bit AdiIRC, MSScript com objects is not available unless you install https://github.com/tablacus/TablacusScriptControl/releases.

Parameters

Parameter Description
<name> Connection name.
<progid> ProgId to open. (e.g Excel.Application)

/comclose

Added in 1.9.4

/comclose <name>

Closes the specified COM connection.

Parameters

Parameter Description
<name> Connection name.

/comlist

Added in 1.9.4

/comlist

Lists all open COM connection.

/comreg

Added in 1.9.4

/comreg -u <filename>

Registers/unregisters a COM DLL with windows.

Switches

Switch Description
-u Unregister instead of register.

Parameters

Parameter Description
<filename> DLL filename to unregister/register.

$com

Added in 1.9.4

$com(name|N)

Returns name if connection is open, or name of Nth connection. N = 0 returns number of open connections.

Parameters

Parameter Description
name|N The connection name or the Nth connection.

Properties

Property Description
.progid The object name.
.result The value returned by the COM object member after the call
.error The error code if any.
.errortext The error text if any.
.argerr TODO
.dispatch $true if this is a dispatch pointer.
.unknown $true if this is a unknown pointer.

$com(name, &bvar)

Returns connection information for the connection and puts it into &bvar.

Parameters

Parameter Description
name| The connection name.
&bvar The &bvar to write to.

Properties

Property Description
.progid The object name.
.result The value returned by the COM object member after the call
.error The error code if any.
.errortext The error text if any.
.argerr TODO
.dispatch $true if this is a dispatch pointer.
.unknown $true if this is a unknown pointer.

$com(name/N,varname)

Returns value of the specified variable name.

Parameters

Parameter Description
name/N The connection name or the Nth connection.
varname Name of the referenced variable.

$com(name,member,method,type1,value1,...,typeN,valueN)

This calls a member of an open COM connection with the specified method and parameters.

Returns: 1 = ok, 0 = fail.

Parameters

Parameter Description
name Connection name.
alias Alias to call when the call is finished.
member Member name.
method Combination of the method values added together (see below).
type The variable type (see below),
value The value assigned to the variable type.

Methods

Method Description
1 DISPATCH_METHOD
2 DISPATCH_PROPERTYGET
4 DISPATCH_PROPERTYPUT
8 DISPATCH_PROPERTYPUTREF

Types

Can be: i1, i2, i4, ui1, ui2, ui4, int, uint, r4, r8, cy, date, decimal, bool, bstr, variant, dispatch, unknown, error.
VB equivalents are: boolean, byte, currency, date, double, integer, long, single, string, variant.
To make a variable by reference, use * in the type name, eg. i1*
To assign a name to a variable for later reference after a call, append it to the type, eg. i1* varname
When using a variant you must also specify the variable type after it, eg. variant bool.

$comcall

Added in 1.9.4

$comcall(name,alias,member,method,type1,value1,...,typeN,valueN)

This calls a member of an open COM connection with the specified method and parameters.

Uses the same format as $com() apart from the alias. It is multi-threaded so it will not halt the script and will call the specified alias once the call returns.

Returns: 1 = ok, 0 = fail.

Parameters

Parameter Description
name Connection name.
alias Alias to call when the call is finished.
member Member name.
method Combination of the method values added together (see below).
type The variable type (see below),
value The value assigned to the variable type.

Methods

Method Description
1 DISPATCH_METHOD
2 DISPATCH_PROPERTYGET
4 DISPATCH_PROPERTYPUT
8 DISPATCH_PROPERTYPUTREF

Types

Can be: i1, i2, i4, ui1, ui2, ui4, int, uint, r4, r8, cy, date, decimal, bool, bstr, variant, dispatch, unknown, error.
VB equivalents are: boolean, byte, currency, date, double, integer, long, single, string, variant.
To make a variable by reference, use * in the type name, eg. i1*
To assign a name to a variable for later reference after a call, append it to the type, eg. i1* varname
When using a variant you must also specify the variable type after it, eg. variant bool.

$comerr

Added in 1.9.4

$comerr

This should be checked after a call to any COM command or identifier. Returns 1 if there was an error, else 0.

$comval

Added in 1.9.4

$comval(name,N,member, [&binvar])

Returns COM member value for the Nth instance of the enumerated collection in name.

Parameters

Parameter Description
name Name of the COM connection.
N If N = 0, return number of items, otherwise The Nth item.
member Member value to get.
[&binvar] Adds the result to the specified &binvar instead. (changes return value to number of bytes added)

Properties

Property Description
.result Used with [&binvar].

Updated by Per Amundsen over 6 years ago · 2 revisions

Also available in: PDF HTML TXT