# COM and Automation Library Routines (W*S)

The following tables list COM and Automation libary routines.

Programs that use COM routines must access the appropriate libraries with USE IFCOM. Programs that use automation routines must access the appropriate libraries with USE IFAUTO. Some procedures also require the USE IFWINTY module.

The COM and Automation routines are restricted to Windows* systems.

Routine names are shown in mixed case to make the names easier to understand. When writing your applications, you can use any case.

Component Object Model (COM) Procedures (USE IFCOM)
Name | Routine Type | Description
--- | --- | ---
COMAddObjectReference | Function | Adds a reference to an object's interface.
COMCLSIDFromProgID 1 | Subroutine | Passes a programmatic identifier and returns the corresponding class identifier.
COMCLSIDFromString 1 | Subroutine | Passes a class identifier string and returns the corresponding class identifier.
COMCreateObject 1 | Subroutine | A generic routine that executes either COMCreateObjectByProgID or COMCreateObjectByGUID.
COMCreateObjectByGUID 1 | Subroutine | Passes a class identifier, creates an instance of an object, and returns a pointer to the object's interface.
COMCreateObjectByProgID | Subroutine | Passes a programmatic identifier, creates an instance of an object, and returns a pointer to the object's IDispatch interface.
COMGetActiveObjectByGUID 1 | Subroutine | Passes a class identifier and returns a pointer to the interface of a currently active object.
COMGetActiveObjectByProgID | Subroutine | Passes a programmatic identifier and returns a pointer to the IDispatch interface of a currently active object.
COMGetFileObject | Subroutine | Passes a file name and returns a pointer to the IDispatch interface of an Automation object that can manipulate the file.
COMInitialize | Subroutine | Initializes the COM library.
COMIsEqualGUID 1 | Function | Determines whether two GUIDs are the same.
COMQueryInterface 1 | Subroutine | Passes an interface identifier and returns a pointer to an object's interface.
COMReleaseObject | Function | Indicates that the program is done with a reference to an object's interface.
COMStringFromGUID 1 | Subroutine | Passes a GUID and returns a string of printable characters.
COMUninitialize | Subroutine | Uninitializes the COM library.

Automation Server Procedures (USE IFAUTO)
Name | Routine Type | Description
--- | --- | ---
AUTOAddArg 1 | Subroutine | Passes an argument name and value and adds the argument to the argument list data structure.
AUTOAllocateInvokeArgs | Function | Allocates an argument list data structure that holds the arguments to be passed to AUTOInvoke.
AUTODeallocateInvokeArgs | Subroutine | Deallocates an argument list data structure.
AUTOGetExceptInfo | Subroutine | Retrieves the exception information when a method has returned an exception status.
AUTOGetProperty 1 | Function | Passes the name or identifier of the property and gets the value of the Automation object's property.
AUTOGetPropertyByID | Function | Passes the member ID of the property and gets the value of the Automation object's property into the argument list's first argument.
AUTOGetPropertyInvokeArgs | Function | Passes an argument list data structure and gets the value of the Automation object's property specified in the argument list's first argument.
AUTOInvoke | Function | Passes the name or identifier of an object's method and an argument list data structure and invokes the method with the passed arguments.
AUTOSetProperty 1 | Function | Passes the name or identifier of the property and a value, and sets the value of the Automation object's property.
AUTOSetPropertyByID | Function | Passes the member ID of the property and sets the value of the Automation object's property, using the argument list's first argument.
AUTOSetPropertyInvokeArgs | Function | Passes an argument list data structure and sets the value of the Automation object's property specified in the argument list's first argument.

1These routines also require USE IFWINTY.

Parent topic: Language Summary Tables