trying to implement a class

I am creating an ActiveX control and i am trying to add a class in from a
generated hpp file, but i am having a little problem when adding in the
class due to a linker error.  This is what i have.

// Delphi code
interface

uses
  ComObj, ActiveX, pSimpleBHO_TLB, StdVcl, SHDocVW, Windows, SysUtils,
Dialogs,
  uBHOManager;

const DISPID_BEFORENAVIGATE2 = 250;
const DISPID_NAVIGATECOMPLETE2 = 252;

type
  TInfoBHO = class(TAutoObject, IInfoBHO, IObjectWithSite, IDispatch)
  private
    BHOManager : TfrmBHOManager;
    function AdviseEvents : boolean;
    function GetParameterTypeAsString(  varType : TVarType ) : String;

  protected
    WebBrowser : IWebBrowser2;
  public
    procedure Initialize; override;
    // Explorer releated methods.
    function SetSite(const pUnkSite: IUnknown ):HResult; stdcall;
    function GetSite(const riid: TIID; out site: IUnknown):HResult; stdcall;
    function Invoke(DispID: Integer; const IID: TGUID; LocaleID: Integer;
      Flags: Word; var Params; VarResult, ExcepInfo, ArgErr: Pointer):
HResult; stdcall;
  end;

// bcb generated header
//-- user
supplied -----------------------------------------------------------

namespace Uinfobho
{
//-- type
declarations -------------------------------------------------------
class DELPHICLASS TInfoBHO;
class PASCALIMPLEMENTATION TInfoBHO : public TAutoObject
{
 typedef TAutoObject inherited;

private:
 Ubhomanager::TfrmBHOManager* BHOManager;
 bool __fastcall AdviseEvents(void);
 AnsiString __fastcall GetParameterTypeAsString(Word varType);

protected:
 Shdocvw::_di_IWebBrowser2 WebBrowser;

public:
 virtual void __fastcall Initialize(void);
 HRESULT __stdcall SetSite(const _di_IUnknown pUnkSite);
 HRESULT __stdcall GetSite(const GUID &riid, /* out */ _di_IUnknown &site);
 HIDESBASE HRESULT __stdcall Invoke(int DispID, const GUID &IID, int
LocaleID, Word Flags, void *Params
  , void * VarResult, void * ExcepInfo, void * ArgErr);
public:
 #pragma option push -w-inl
 /* TComObject.Create */ inline __fastcall TInfoBHO(void) : TAutoObject()
{ }
 #pragma option pop
 #pragma option push -w-inl
 /* TComObject.CreateAggregated */ inline __fastcall TInfoBHO(const
_di_IUnknown Controller) : TAutoObject(
  Controller) { }
 #pragma option pop
 #pragma option push -w-inl
 /* TComObject.CreateFromFactory */ inline __fastcall
TInfoBHO(TComObjectFactory* Factory, const _di_IUnknown
  Controller) : TAutoObject(Factory, Controller) { }
 #pragma option pop
 #pragma option push -w-inl
 /* TComObject.Destroy */ inline __fastcall virtual ~TInfoBHO(void) { }
 #pragma option pop

private:
 void *__IInfoBHO; /* Psimplebho_tlb::IInfoBHO */
 void *__IObjectWithSite; /* IObjectWithSite */

public:
 operator IDispatch*(void) { return (IDispatch*)&__IInfoBHO; }
 operator IObjectWithSite*(void) { return
(IObjectWithSite*)&__IObjectWithSite; }
 operator IInfoBHO*(void) { return (IInfoBHO*)&__IInfoBHO; }

Quote
};

I decided to use this in my program header file:

// I get an error on the this line

class TInfoBHO : public TAutoObject
{ //[C++ Error] uInfoBHO.h(10): E2303 Type name expected

 //typedef TAutoObject inherited;

private:
 //TfrmBHOManager* BHOManager;
 bool __fastcall AdviseEvents(void);
 AnsiString __fastcall GetParameterTypeAsString(Word varType);

protected:
 _di_IWebBrowser2 WebBrowser;

public:
 virtual void __fastcall Initialize(void);
 HRESULT __stdcall SetSite(const _di_IUnknown pUnkSite);
 HRESULT __stdcall GetSite(const GUID &riid, IUnknown &site);
 HIDESBASE HRESULT __stdcall Invoke(int DispID, const GUID &IID, int
LocaleID, Word Flags, void *Params
  , void * VarResult, void * ExcepInfo, void * ArgErr);

Quote
};

Is there a way to fix this??

Appreciate the effort....