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 usingDestroyObject.
 
- 
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 CreateObjectas 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 ProgIDis located in the registry, but the CLSID associated with theProgIDis not correct.
 
- 
Action: Check that the COM component of the specified ProgIDis registered.
 
 
- COM-0005: An error occurred writing the CLSID to the registry 
- 
Cause: The ProgIDis not located in the registry. An attempt was made to create theProgIDand assign aCLSIDto 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 IDispatchinterface, 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 pexcepinfoshould 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 GetLastErrorto 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 Invoketried 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 ProgIDis 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 ProgIDorCLSIDis 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 NULLvalue 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.