### IUnknownTypeOnStream

  IUnknownTypeOnStream is an exception class thrown by the streaming framework.

  This exception signals an object with an unknown type was encountered while reading from an IDataStream. One situation that can cause this error is that the DLL with the class implementation for the type is not loaded in the process that is reading from the stream.

### IUnknownTypeOnStream - Member Functions and Data by Group

### Constructors & Destructor

Use these functions to construct, copy and destroy instances of IUnknownTypeOnStream.

~IUnknownTypeOnStream

      public:
      virtual ~IUnknownTypeOnStream()

  Destroys the exception

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

IUnknownTypeOnStream

  Used to construct objects of this class.

  Overload 1

      public:
      IUnknownTypeOnStream(const IUnknownTypeOnStream& other)

  The copy constructor is provided so that the compiler can make copies of the object during the throwing of an exception.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

  Overload 2

      public:
      IUnknownTypeOnStream( const char* text = 0,
                            long errorID = 0,
                            Severity severity = recoverable )

  This constructor is used by the streaming implementation when the error condition is detected. It would not normally be used by application code.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Exception Type

Use these members to determine the name (type) of the exception. This is used for logging out an exception object's error information.

name

      public:
      virtual const char* name() const

  Gets the name of the class.

  name
    A pointer to a null-terminated string containing the class name.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### IUnknownTypeOnStream - Inherited Member Functions and Data

#### Inherited Public Functions

  IException

  -     virtual ~IException()

  -     virtual IException&
          addLocation( const IExceptionLocation& location )

  -     IException& appendText(const char* errorText)

  -     static void
          assertParameter( const char* exceptionText,
                           IExceptionLocation location )

  -     ErrorCodeGroup errorCodeGroup() const

  -     unsigned long errorId() const

  -     IException(const IException& exception)

  -     IException( const char* errorText,
                    unsigned long errorId = 0,
                    Severity severity = IException::unrecoverable )

  -     virtual int isRecoverable() const

  -     const IExceptionLocation*
          locationAtIndex( unsigned long locationIndex ) const

  -     unsigned long locationCount() const

  -     virtual IException& logExceptionData()

  -     IException& setErrorCodeGroup(ErrorCodeGroup errorGroup)

  -     IException& setErrorId(unsigned long errorId)

  -     IException& setSeverity(Severity severity)

  -     IException& setText(const char* errorText)

  -     static IException::TraceFn*
          setTraceFunction( IException::TraceFn& traceFunction )

  -     virtual void terminate()

  -     const char* text(unsigned long indexFromTop = 0) const

  -     unsigned long textCount() const

#### Inherited Public Data

  IException

  -     static ErrorCodeGroup const baseLibrary

  -     static ErrorCodeGroup const CLibrary

  -     static ErrorCodeGroup const operatingSystem

  -     static ErrorCodeGroup const other

  -     static ErrorCodeGroup const presentationSystem

#### Inherited Protected Functions

  - None

#### Inherited Protected Data

  - None