Groups > Borland > Borland C plus plus builder Active X > Re: Error E2352 Migrating from BCB5 to BDS2006




Re: Error E2352 Migrating from BCB5 to BDS2006

Re: Error E2352 Migrating from BCB5 to BDS2006
Mon, 17 Dec 2007 14:58:17 -080
"Roberto Meneghini" <rmeneghini@separationsystems.com> wrote in
message 
news:4766fce5$1@newsgroups.borland.com...

> After converting an OCX project created with BCB5 into BDS2006 C++,
> I'm receiving the following error:

The error is self-explanitory.  Your TSepSys_GIXImpl class does not 
implement the get_Visible(short*) method that is declared in the ISepSys_GIX 
interface.


Gambit 

Post Reply
Error E2352 Migrating from BCB5 to BDS2006
Mon, 17 Dec 2007 16:49:11 -060
After converting an OCX project created with BCB5 into BDS2006 C++, I'm 
receiving the following error:

[C++ Error] atlcom.h(1877): E2353 Class 'CComObject<TSepSys_GIXImpl>' is 
abstract because of '__stdcall ISepSys_GIX::get_Visible(short*)=0'

The project compiles and links without errors using BCB5. I'm using update 2 
of BDS2006. Any suggestions?

Thanks,

Roberto 

Post Reply
Re: Error E2352 Migrating from BCB5 to BDS2006
Tue, 18 Dec 2007 08:52:51 -060
Thanks for the prompt response. However, as I mentioned in the previous
message, the project compiled without problems on BCB5. I double-checked
that all the files were migrated into the updated project. Following please
find and excerpt of the source code where the conflicting function is
declared and implemented. Please let me know if you need further information

Regards,

Roberto

// *********************************************************************//
// Interface: ISepSys_GIX
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      
// *********************************************************************//
interface ISepSys_GIX  : public IDispatch
{
public:
  virtual HRESULT STDMETHODCALLTYPE get_Visible(VARIANT_BOOL*
Value/*[out,retval]*/) = 0; // [1]
:
:


#if !defined(__TLB_NO_INTERFACE_WRAPPERS)

  VARIANT_BOOL __fastcall get_Visible(void)
  {
 VARIANT_BOOL Value;
 OLECHECK(this->get_Visible((VARIANT_BOOL*)&Value));
    return Value;
  }



"Remy Lebeau (TeamB)" <no.spam@no.spam.com> wrote in message
news:476700ff$1@newsgroups.borland.com...
>
> "Roberto Meneghini" <rmeneghini@separationsystems.com>
wrote in message
> news:4766fce5$1@newsgroups.borland.com...
>
>> After converting an OCX project created with BCB5 into BDS2006 C++,
>> I'm receiving the following error:
>
> The error is self-explanitory.  Your TSepSys_GIXImpl class does not
> implement the get_Visible(short*) method that is declared in the
> ISepSys_GIX
> interface.
>
>
> Gambit
>
>


Post Reply
Re: Error E2352 Migrating from BCB5 to BDS2006
Tue, 18 Dec 2007 10:10:47 -080
"Roberto Meneghini" <rmeneghini@separationsystems.com> wrote in
message 
news:4767f4e2@newsgroups.borland.com...

> Just to let you know that I figured out the problem. During the 
> conversion, TOLEBOOL was changed to VARIANT_BOOL in the TLB but not in
> the implementation. Once I changed everything to VARIANT_BOOL,
> the compilation error went away.

Borland started moving away from using "smart" parameter types in TLB

declarations in BCB 6.


Gambit 

Post Reply
Re: Error E2352 Migrating from BCB5 to BDS2006
Tue, 18 Dec 2007 10:27:14 -060
Just to let you know that I figured out the problem. During the conversion, 
TOLEBOOL was changed to VARIANT_BOOL in the TLB but not in the 
implementation. Once I changed everything to VARIANT_BOOL, the compilation 
error went away.

Regards,

Roberto


"Remy Lebeau (TeamB)" <no.spam@no.spam.com> wrote in message 
news:476700ff$1@newsgroups.borland.com...
>
> "Roberto Meneghini" <rmeneghini@separationsystems.com>
wrote in message 
> news:4766fce5$1@newsgroups.borland.com...
>
>> After converting an OCX project created with BCB5 into BDS2006 C++,
>> I'm receiving the following error:
>
> The error is self-explanitory.  Your TSepSys_GIXImpl class does not 
> implement the get_Visible(short*) method that is declared in the 
> ISepSys_GIX interface.
>
>
> Gambit
> 

Post Reply
about | contact