Board index » cppbuilder » A CBuilder Midas Demo does not work anymore

A CBuilder Midas Demo does not work anymore

My machine configuration is:
Windows NT 4 Wks with SP5
C++ Builder 4 Enterprise SP1 installed in C:\CBUILDER

I was trying to run the Midas example in the directory
C:\CBUILDER\EXAMPLES\MIDAS\EmpEdit\EmpAll.bpg

I compiled once and it worked.
So I included another TTable component pointing to animals.dbf, just as a
test, in the ServData.
I named the component tstTable, right clicked on it and exported it from the
data module and then ran a build on the Srvr.
I edited EmpEdit form and included another TClientDataSet pointing to the
server's tstTable. Built it and when I try to open the table I get a message
box saying:

'src->QueryInterface(GetIID(), (LPVOID*)(&intf))':
No such interface supported @ C:\CBUILDER\INCLUDE\VCL\utilcls.h/2014
Press [Y]es to terminate, [N]o to continue and [C]ancel to Debug.

When I click on Yes, another message comes up:
The server threw an exception.

If I click on No:
Access violation at address 430181DB in module 'Vclmid40.bpl'. Read of
address 00000000.

The reason why I was trying this is because I'm getting the same error with
my ActiveForm.
Is there some sort of a bug in the CppBuilder SP1????

 

Re:A CBuilder Midas Demo does not work anymore


Jener,
maybe the multi-tier group could be more helpful with the MIDAS ?

Alex

Quote
"Jener R. Silva" wrote:

[snip]

Re:A CBuilder Midas Demo does not work anymore


I filled out a bug report for this.  The new tlib editor uses a type called
TProviderPtr.  If you replace this with TProvider* in all the generated code
and rebuild the remote data server will now work.

Jener R. Silva <je...@erols.com> wrote in message
news:7m0k21$fru15@forums.borland.com...

Quote
> My machine configuration is:
> Windows NT 4 Wks with SP5
> C++ Builder 4 Enterprise SP1 installed in C:\CBUILDER

> I was trying to run the Midas example in the directory
> C:\CBUILDER\EXAMPLES\MIDAS\EmpEdit\EmpAll.bpg

> I compiled once and it worked.
> So I included another TTable component pointing to animals.dbf, just as a
> test, in the ServData.
> I named the component tstTable, right clicked on it and exported it from
the
> data module and then ran a build on the Srvr.
> I edited EmpEdit form and included another TClientDataSet pointing to the
> server's tstTable. Built it and when I try to open the table I get a
message
> box saying:

> 'src->QueryInterface(GetIID(), (LPVOID*)(&intf))':
> No such interface supported @ C:\CBUILDER\INCLUDE\VCL\utilcls.h/2014
> Press [Y]es to terminate, [N]o to continue and [C]ancel to Debug.

> When I click on Yes, another message comes up:
> The server threw an exception.

> If I click on No:
> Access violation at address 430181DB in module 'Vclmid40.bpl'. Read of
> address 00000000.

> The reason why I was trying this is because I'm getting the same error
with
> my ActiveForm.
> Is there some sort of a bug in the CppBuilder SP1????

Re:A CBuilder Midas Demo does not work anymore


Sorry about that - TProvider should be IProvider.

Quote
Mark Johnson <m...@judocd.com> wrote in message

news:7m2b2g$heo5@forums.borland.com...
Quote
> I filled out a bug report for this.  The new tlib editor uses a type
called
> TProviderPtr.  If you replace this with TProvider* in all the generated
code
> and rebuild the remote data server will now work.

> Jener R. Silva <je...@erols.com> wrote in message
> news:7m0k21$fru15@forums.borland.com...
> > My machine configuration is:
> > Windows NT 4 Wks with SP5
> > C++ Builder 4 Enterprise SP1 installed in C:\CBUILDER

> > I was trying to run the Midas example in the directory
> > C:\CBUILDER\EXAMPLES\MIDAS\EmpEdit\EmpAll.bpg

> > I compiled once and it worked.
> > So I included another TTable component pointing to animals.dbf, just as
a
> > test, in the ServData.
> > I named the component tstTable, right clicked on it and exported it from
> the
> > data module and then ran a build on the Srvr.
> > I edited EmpEdit form and included another TClientDataSet pointing to
the
> > server's tstTable. Built it and when I try to open the table I get a
> message
> > box saying:

> > 'src->QueryInterface(GetIID(), (LPVOID*)(&intf))':
> > No such interface supported @ C:\CBUILDER\INCLUDE\VCL\utilcls.h/2014
> > Press [Y]es to terminate, [N]o to continue and [C]ancel to Debug.

> > When I click on Yes, another message comes up:
> > The server threw an exception.

> > If I click on No:
> > Access violation at address 430181DB in module 'Vclmid40.bpl'. Read of
> > address 00000000.

> > The reason why I was trying this is because I'm getting the same error
> with
> > my ActiveForm.
> > Is there some sort of a bug in the CppBuilder SP1????

Re:A CBuilder Midas Demo does not work anymore


Mark, I think that the sample should be updated to reflect the new
TLE/utilcls.h, not the other way around...

Alex

Quote
Mark Johnson wrote:

[snip]

Re:A CBuilder Midas Demo does not work anymore


Not sure what you mean.  Create a project with a remote data module; add a
table; export table from data module.  This creates a *Impl.cpp and *Impl.h
file that is added to your project.  Before patch #1, IProvider* is used in
these files; after patch #1, IProviderPtr is used in these files.  When
IProviderPtr is present, the app doesn't work.  Replace IProviderPtr with
IProvider*, the app works.  Patch #1 instantly broke my working code.  This
is the only way I have found to get it to work.

Alex Bakaev [TeamB] <al...@jetsuite.com> wrote in message
news:378503BA.36C93885@jetsuite.com...

Quote
> Mark, I think that the sample should be updated to reflect the new
> TLE/utilcls.h, not the other way around...

> Alex

> Mark Johnson wrote:
> [snip]

Re:A CBuilder Midas Demo does not work anymore


I see. I thought you where using TLE and then changing the code it
generated. I'm wondering why/what broke as IProviderPtr is a smart
pointer around IProvider * ( concluding this from what xxxPtr is in
another cases ). Maybe some IID is messed up or an extra memory
dereference/address of is taken ).

Alex

Quote
Mark Johnson wrote:

> Not sure what you mean.  Create a project with a remote data module; add a
> table; export table from data module.  This creates a *Impl.cpp and *Impl.h
> file that is added to your project.  Before patch #1, IProvider* is used in
> these files; after patch #1, IProviderPtr is used in these files.  When
> IProviderPtr is present, the app doesn't work.  Replace IProviderPtr with
> IProvider*, the app works.  Patch #1 instantly broke my working code.  This
> is the only way I have found to get it to work.

> Alex Bakaev [TeamB] <al...@jetsuite.com> wrote in message
> news:378503BA.36C93885@jetsuite.com...
> > Mark, I think that the sample should be updated to reflect the new
> > TLE/utilcls.h, not the other way around...

> > Alex

> > Mark Johnson wrote:
> > [snip]

--
HotSend - portable documents technology
http://www.hotsend.com/
eFax - get your faxes via email - Free !
http://www.efax.com

Other Threads