11/13
A COM Automation Error Messages
This appendix contains these topics:
Oracle COM Automation Feature, PL/SQL Errors
The following is a list of Oracle COM Automation Feature PL/SQL errors and their common causes.
- COM-0001: Not a Boolean type
-
Cause: The property type, or return value type, is not a boolean, but a Boolean value was requested.
-
Action: Make sure that the variable is of the appropriate data type.
- COM-0002: Invalid Token or no interface for token
-
Cause: The token that was specified does not reference any COM object created using CreateObject
, or the COM object was freed using DestroyObject
.
-
Action: Make sure that the interface exists.
- COM-0003: Maximum Objects reached
-
Cause: Only 1024 COM objects can be active at any time. This includes COM objects created using CreateObject
as well as COM objects obtained as property values and return values.
-
Action: Make sure that objects are destroyed after they are used, by calling
DestroyObject.
- COM-0004: The registered CLSID for the ProgID is invalid
-
Cause: The ProgID
is located in the registry, but the CLSID associated with the ProgID
is not correct.
-
Action: Check that the COM component of the specified ProgID
is registered.
- COM-0005: An error occurred writing the CLSID to the registry
-
Cause: The ProgID
is not located in the registry. An attempt was made to create the ProgID
and assign a CLSID
to it, but the registry could not be modified.
-
Action: Ensure that your registry can be written to and is not corrupted.
- COM-0006: A specified class is not registered in the registration database
-
Cause: A specified class is not registered in the registration database.
-
Action: Make sure that the class is registered.
- COM-0007: Failed to initialize COM Automation object
-
Cause: There was an error creating the COM object.
-
Action: Make sure that the object is registered as a COM Automation object.
- COM-0008: No interface is supported
-
Cause: This COM object does not support the IDispatch
interface, so it cannot support COM Automation.
-
Action: Verify that the interface specified is valid.
- COM-0014: Failure to invoke
-
Cause: There was an error invoking the method or property.
-
Action: Verify that the method name is valid for the object.
- COM-0015: Bad parameter count
-
Cause: The number of parameters given for the method or property is different from the number of parameters expected.
-
Action: Make sure that the number of parameters for a method is equal to the count.
- COM-0017: The application needs to raise an exception. The structure passed in
pexcepinfo
should be filled in
-
Cause: The COM object threw an exception.
-
Action: The exception includes an error source, error description, Help file, and the help file context. Call GetLastError
to get this additional information
- COM-0018: The requested member does not exist, or the call to Invoke tried to set the value of a read-only property
-
Cause: The requested member does not exist, or the call to Invoke
tried to set the value of a read-only property.
-
Action: Make sure that the property value can be written to or the member exists.
- COM-0020: One of the arguments in rgvarg could not be coerced to the specified type
-
Cause: One of the arguments is not the type expected by the method or property, and the argument cannot be coerced to the expected type.
-
Action: Make sure that the coerced arguments are of compatible data types.
- COM-0022: One or more of the arguments could not be coerced
-
Cause: One of the arguments is not the type expected by the method or property, and the argument cannot be coerced to the expected type.
-
Action: Make sure that your arguments are compatible.
- COM-0025: Not an optional parameter
-
Cause: A required argument is missing.
-
Action: Make sure that your argument count is correct for the number of -parameters passed in.
- COM-0026: Name exceeded the maximum character allowed
-
Cause: The property name, method name, server name, or ProgID
is too long.
-
Action: Enter less than 1024 characters for the name.
Microsoft COM Automation Errors
The following is a list of Microsoft COM Automation errors and their common causes. Both the hexadecimal and binary error codes are listed.
- (0x800401f3) (-2147221005) Invalid class string
-
Cause: The specified ProgID
or CLSID
is not registered as a COM object in the registry of the local computer.
-
Action: Correctly install the COM component.
- (0x8007007e) (-2147024770) The specified module could not be found
-
Cause: The specified COM object is registered as an in-process COM server (DLL file), but the DLL file could not be found or loaded.
-
Action: Correctly install the COM component.
- (0x80020004) (-2147352572) Parameter not found
-
Cause: A named parameter was specified before a positional parameter.
-
Action: Ensure that all named parameters are specified after all positional parameters.
- (0x80020005) (-2147352571) Type mismatch
-
Cause: The data type of a PL/SQL local variable used to store a returned property value or a method return value did not match the Visual Basic data type of the property or method return value, or the return value of a method was requested, but it does not return a value.
-
Action: Ensure that the local variable is of the appropriate data type and, for methods, ensure that the return value is not type void.
- (0x80020006) (-2147352570) Unknown name
-
Cause: The specified property or method name was not found for the specified object.
-
Action: Verify that the method or property name is valid for the object.
- (0x80020008) (-2147352568) Bad variable type
-
Cause: The data type of a PL/SQL or Java value passed as a method parameter did not match the COM Automation data type of the method parameter, or a NULL
value was passed as a method parameter.
-
Action: Ensure that any local variables used as method parameters are of the appropriate data type and are set to a value other than NULL
.
- (0x80080005) (-2146959355) Server execution failed
-
Cause: The specified COM object is registered as a local COM server (.EXE file), but the .EXE file could not be found or started.
-
Action: Correctly install the COM component.