A COM Automation Error Messages
This appendix includes the following:
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 datatype.
- 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: Make sure 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 the class is registered.
- COM-0007: Failed to initialize COM Automation object
-
Cause: There was an error creating the COM object.
-
Action: Make sure 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: Check that the interface specified is valid.
- COM-0014: Failure to invoke
-
Cause: There was an error invoking the method or property.
-
Action: Check 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 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 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 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 datatypes.
- 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 your arguments are compatible.
- COM-0025: Not an optional parameter
-
Cause: A required argument is missing.
-
Action: Make sure 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 datatype of a PL/SQL local variable used to store a returned property value or a method return value did not match the Visual Basic datatype 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 datatype and, for methods, make sure 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: Check that the method or property name is valid for the object.
- (0x80020008) (-2147352568) Bad variable type
-
Cause: The datatype of a PL/SQL or Java value passed as a method parameter did not match the COM Automation datatype 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 datatype 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.