The OLEObject object acts as a proxy for a remote OLE object.
You can customize your own version of the OLEObject object by defining a standard class user object inherited from the built-in OLEObject. You can then access the OLEObject Constructor, Destructor, Error, and ExternalException events by writing scripts that contain code for the events.
Coding Error and ExternalException events
If you code the Error and ExternalException events, any active exception handler for a RuntimeError will not be processed. However, you can throw an exception in the scripts for these events, and you can make the arguments of these events available for exception handling by putting the arguments in a string in a throw statement that passes the string to the exception handler.
OLEObject objects are displayed in the OLE tab of the Browser as Programmable Objects.
For more information about creating a custom OLEObject object, see the section called “Working with User Objects” in Users Guide.
For more information about using the OLEObject object in an application, see the section called “Using OLE in an Application” in Application Techniques.
OLEObject is a dynamic object
In order to support OLE, OLEObject is a dynamic object. PowerBuilder accepts property names and function names and parameter lists that are not already defined for the object. If the properties or functions do not exist during execution, you get a runtime error.
OLEObject property |
Datatype |
Description |
---|---|---|
ClassDefinition |
PowerObject |
An object of type PowerObject containing information about the class definition of the object or control. |
Handle |
Objhandle |
Internal use only. |
OLEObject event |
Occurs |
---|---|
When the user object is created. |
|
When the user object is destroyed. |
|
When an error is found in a data or property expression for an external object. |
|
When the evaluation of an expression involving properties of an external object causes an error. This type of event occurs before the Error event. |
OLEObject function |
Datatype returned |
Description |
---|---|---|
String |
Returns the name assigned to the user object |
|
Integer |
Creates a new instance of the class and connects to it |
|
Integer |
Creates a new OLE object in the specified remote server application and associates the new object with a PowerBuilder OLEObject variable |
|
Integer |
Opens a specified file and connects to the corresponding server application |
|
Integer |
Associates an OLE object with a PowerBuilder OLEObject variable and starts the server application |
|
Integer |
Releases all objects previously connected |
|
Integer |
Returns a pointer to the underlying OLE object |
|
Integer |
Creates a reference to a context-specific instance of the specified service |
|
PowerObject |
Returns a reference to the name of the parent object |
|
Boolean |
Determines whether a server object is defunct |
|
Boolean |
Adds an event to the end of the message queue of the user object |
|
Integer |
Releases the pointer to the underlying OLE object |
|
Integer |
Sets the language locale to be used for automation programming on the object |
|
Integer |
Sets the automation pointer of an OLEObject object to the value of the automation pointer of another object |
|
Integer |
Sets the number of milliseconds that a PowerBuilder client waits before canceling an OLE procedure call to the server |
|
Integer |
Sends an event to the user object and executes the script associated with the event |
|
Object |
Returns the type of the user object |