Board index » delphi » WARNING: Most D2 components DON'T WORK in D3

WARNING: Most D2 components DON'T WORK in D3

Before anyone rushes into Delphi 3.0.
Expect a massive release from the shareware authors within the next
month or so.

From my personal collection:

Dies when importing (Fatal Error (0): Can't find XXX.pas) - evern
though you imported a .DCU
---------------
XCeed Zip
AHM Componenets
PGTray95
LMD

Works
---------------
Internet Mail Suite
KSCalendar

 

Re:WARNING: Most D2 components DON'T WORK in D3


Dave <anti.s...@header.com> wrote in article
<BAF4E991BF6FFEAC.A13C4EFBA8A5E54F.A6B1E15058B17...@library-proxy.airnews.ne
t>...

Quote
> Before anyone rushes into Delphi 3.0.
> Expect a massive release from the shareware authors within the next
> month or so.

> From my personal collection:

> Dies when importing (Fatal Error (0): Can't find XXX.pas) - evern
> though you imported a .DCU
> ---------------
> XCeed Zip
> AHM Componenets
> PGTray95
> LMD

Are you trying to import a D2 DCU into D3's palette?  If so, it isn't
supposed to work: the class hierarchies have changed a bit, making most
older DCUs incompatible with new ones.  Recompiling the older components
usually works fine, but you have to have the source for that (the authors
probably have this).

-- Conrad Herrmann

Re:WARNING: Most D2 components DON'T WORK in D3


On 3 May 1997 20:16:25 GMT, "Conrad Herrmann"

Quote
<cherrman-nojunkma...@ix.netcom.com> wrote:
>Dave <anti.s...@header.com> wrote in article
><BAF4E991BF6FFEAC.A13C4EFBA8A5E54F.A6B1E15058B17...@library-proxy.airnews.ne
>t>...
>> Before anyone rushes into Delphi 3.0.
>> Expect a massive release from the shareware authors within the next
>> month or so.

>> From my personal collection:

>> Dies when importing (Fatal Error (0): Can't find XXX.pas) - evern
>> though you imported a .DCU
>> ---------------
>> XCeed Zip
>> AHM Componenets
>> PGTray95
>> LMD

>Are you trying to import a D2 DCU into D3's palette?  If so, it isn't
>supposed to work: the class hierarchies have changed a bit, making most
>older DCUs incompatible with new ones.  Recompiling the older components
>usually works fine, but you have to have the source for that (the authors
>probably have this).

>-- Conrad Herrmann

With the pre-release version of D3, I attempted to load a third-party
D2 component, and it failed with the same error (can't find xxx.pas),
even though it loaded fine in D2.  I reported this problem to Borland,
and apparently it wasn't addressed.

I hate to say it, but this is real bug and will cause problems in the
organization I contract for.

Steve

  Steve Magruder (wonka...@earthlink.net)
  Executive Vice President / Chairperson          
  T o m o r r o w ' s   H o m e   C o r p o r a t i o n
  9431 Westport Road, Box #344, Louisville, Kentucky  40241
  "Architects of a New American Dream"

Re:WARNING: Most D2 components DON'T WORK in D3


Steve Magruder <wonka...@earthlink.net> wrote in article
<336d3964.117702...@news.earthlink.net>...

Quote
> On 3 May 1997 20:16:25 GMT, "Conrad Herrmann"
> <cherrman-nojunkma...@ix.netcom.com> wrote:

> With the pre-release version of D3, I attempted to load a third-party
> D2 component, and it failed with the same error (can't find xxx.pas),
> even though it loaded fine in D2.  I reported this problem to Borland,
> and apparently it wasn't addressed.

> I hate to say it, but this is real bug and will cause problems in the
> organization I contract for.

I agree there is a bug, which is that when you attempt to install the D2
DCU it should give you a better error that says the DCU was compiled with a
different version of Controls.PAS, Forms.PAS and other VCL classes.  The
short version of the error message could say something like "D2 DCUs can't
be used with D3 VCLs"--although that's not entirely accurate.

The rest is as you've discusses already in other threads...

-- Conrad Herrmann

Re:WARNING: Most D2 components DON'T WORK in D3


bob ostermann <b...@rtquotes.com> wrote in article
<5kku6c$j...@ultra.exodus.net>...

Quote
> >Are you trying to import a D2 DCU into D3's palette?  If so, it isn't
> >supposed to work: the class hierarchies have changed a bit, making most
> >older DCUs incompatible with new ones.  Recompiling the older components
> >usually works fine, but you have to have the source for that (the
authors
> >probably have this).
> this is the most stupid thing I have ever heard of.

So, you've never upgraded MSVC++ because your MFC classes had to be
recompiled in order to work with new versions of MFC, or the same for
BC++/OWL, or any other class library ever written?  You never upgraded from
D1 to D2 because you had to recompile your VCL source?

This is clearly a case of your expectations exceeding Borland's intentions,
but it's not as if Borland's design decisions are entirely unreasonable.
Because VCL components are based on a class hierarchy, they are far easier
to develop than raw ActiveX controls.  VCL components perform better and
have better delivery options than ActiveX controls both because they're
based on a class hierarchy and because they're compiled.  One disadvantage
with class hierarchies is that when you upgrade them, you have to rebuild
all the dependent objects.

Quote
> Maybe there
> should have been a compatibility feature so that my customers won't
scream
> that they can't build their f*cking project until I drop everything and
fix
> this stuff.

There is: you take your old source, push the compile button, and put the
new .DCU on your web site.  This is hardly difficult.  Most of the Delphi
component vendors are well aware that they need to do this (they did it
with D1->D2 as well), and don't think it's a problem they can't deal with.

Quote
> Maybe this should have been documented WITH A BIG RED *******
> LABEL reading  "don't spend  any time modifying you application until you
have
> all the source code for the controls you use".

You don't need the source.  If the company that sold you the components is
serious about supporting your use of the components, they will surely make
a new version of the .DCU available for you to use (as many have done
already).  If you make a new .DCU available to your customers,

-- Conrad Herrmann

Re:WARNING: Most D2 components DON'T WORK in D3


Quote
In article <01bc57fe$d6747f80$b381b6c7@bohr>, "Conrad Herrmann" <cherrman-nojunkma...@ix.netcom.com> wrote:

>Dave <anti.s...@header.com> wrote in article
><BAF4E991BF6FFEAC.A13C4EFBA8A5E54F.A6B1E15058B17...@library-proxy.airnews.ne
>t>...
>> Before anyone rushes into Delphi 3.0.
>> Expect a massive release from the shareware authors within the next
>> month or so.

>> From my personal collection:

>> Dies when importing (Fatal Error (0): Can't find XXX.pas) - evern
>> though you imported a .DCU
>> ---------------
>> XCeed Zip
>> AHM Componenets
>> PGTray95
>> LMD

>Are you trying to import a D2 DCU into D3's palette?  If so, it isn't
>supposed to work: the class hierarchies have changed a bit, making most
>older DCUs incompatible with new ones.  Recompiling the older components
>usually works fine, but you have to have the source for that (the authors
>probably have this).

>-- Conrad Herrmann

this is the most stupid thing I have ever heard of. The least Borland could
have done is contact registered owners of D2 and made them aware of the
additional workload. We (component developers) SHOULD have been given
pre-release copies so that we could be ready for the onslaught. Maybe there
should have been a compatibility feature so that my customers won't scream
that they can't build their f*cking project until I drop everything and fix
this stuff. Maybe this should have been documented WITH A BIG RED F*CKING
LABEL reading  "don't spend  any time modifying you application until you have
all the source code for the controls you use".

Maybe someone can tell me why these things happen? How can a company that
makes a product as good as Delphi, be so uncoordinated and lame during product
release?

wsssshhhhhhhhht  (sound of soapbox being deflated and packed away)

b...@rtquotes.com

Re:WARNING: Most D2 components DON'T WORK in D3


You are correct. In the past, by that I mean earlier versions of Turbo PASCAL,
you had the same problem. Hopefully the person who wrote the component you want
to use will also upgrade. The problem is that the DCU format is secret and
Borland can ( and does ) change it from release to release. Usually they are
doing this to accomodate news features. It would be nice if you could upgrade
your old D2 DCU files though. If the format of the old files were available it
probably would not not too hard to do. I saw a shareware utility once that
would TPU files. Which are the precursor to DCU files.

My other suggestion is to wrap the DCU's that you want to use in a DLL.

In article
<BAF4E991BF6FFEAC.A13C4EFBA8A5E54F.A6B1E15058B17...@library-proxy.airnews.net>,
anti.s...@header.com says...

Quote

>Before anyone rushes into Delphi 3.0.
>Expect a massive release from the shareware authors within the next
>month or so.

>From my personal collection:

>Dies when importing (Fatal Error (0): Can't find XXX.pas) - evern
>though you imported a .DCU
>---------------
>XCeed Zip
>AHM Componenets
>PGTray95
>LMD

>Works
>---------------
>Internet Mail Suite
>KSCalendar

Re:WARNING: Most D2 components DON'T WORK in D3


Even if the DCU file format was version-compatible between D2 and D3
(actually, I think it's fairly compatible, not much has changed), the
format is not the reason you can't use D2 components in D3 without
recompiling.  The reason is that DCUs contain compiled code, which means
the compiler has already made some decisions about where to put fields and
methods in memory.  When the class hierarchy that these decisions were
based upon has changed, you have to recompile in order to get the compiler
to re-do the object layouts.

-- Conrad Herrmann
Tony Colston <Tony.Cols...@mci.com> wrote in article
<5kn8o4$hb...@news.internetmci.com>...

Quote
> You are correct. In the past, by that I mean earlier versions of Turbo
PASCAL,
> you had the same problem. Hopefully the person who wrote the component
you want
> to use will also upgrade. The problem is that the DCU format is secret
and
> Borland can ( and does ) change it from release to release. Usually they
are
> doing this to accomodate news features. It would be nice if you could
upgrade
> your old D2 DCU files though. If the format of the old files were
available it
> probably would not not too hard to do. I saw a shareware utility once
that
> would TPU files. Which are the precursor to DCU files.

> My other suggestion is to wrap the DCU's that you want to use in a DLL.

Re:WARNING: Most D2 components DON'T WORK in D3


On Mon, 05 May 97 15:30:43 GMT, b...@rtquotes.com (bob ostermann)
wrote:

Quote
>this is the most stupid thing I have ever heard of. The least Borland could
>have done is contact registered owners of D2 and made them aware of the
>additional workload. We (component developers) SHOULD have been given
>pre-release copies so that we could be ready for the onslaught. Maybe there
>should have been a compatibility feature so that my customers won't scream
>that they can't build their f*cking project until I drop everything and fix
>this stuff. Maybe this should have been documented WITH A BIG RED F*CKING
>LABEL reading  "don't spend  any time modifying you application until you have
>all the source code for the controls you use".

>Maybe someone can tell me why these things happen? How can a company that
>makes a product as good as Delphi, be so uncoordinated and lame during product
>release?

Actually, I should think this was obvious.

I have been working to minimize this impact on myself by purchasing
source with the components I buy any time it is available.

David R. Michael
davi...@busprod.com
http://www.busprod.com/davidrm/software

My views are my own and I share them at my own discretion.

Re:WARNING: Most D2 components DON'T WORK in D3


Well, I just tried to install TurboPower's Async Professional
into Delphi 3 (which comes with full source) and got
compilation errors so there are sourcefile incompatibilities as well.

This is a major headache.

David Jameson

Re:WARNING: Most D2 components DON'T WORK in D3


On Wed, 07 May 1997 12:04:18 -0400, David Jameson <d...@watson.ibm.com>
wrote:

Quote
>Well, I just tried to install TurboPower's Async Professional
>into Delphi 3 (which comes with full source) and got
>compilation errors so there are sourcefile incompatibilities as well.

>This is a major headache.

>David Jameson

Free Patches for almost all TurboPower compos will be available next
week.

Marcus

*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~
Marcus Monnig - minib...@cs.tu-berlin.de - PGP Public Key on request
*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

Re:WARNING: Most D2 components DON'T WORK in D3


I can only say that I moved up the 10 custom comps I use, and they moved
up without a problem.

I also moved up an application with no problem.

Now as far as the .DCU files not being compatible, that was a lesson I
never had to learn.  I knew the jump from Delphi 1 to 2 was going to
render the .DCU files useless so I have always purchased the source.

it's pretty much a rule of thumb around here to never install a comp
unless you have the source also.

for anybody who is interested, here are some directives that can help
component builders in the delphi2/3 situation.

{$IFDEF VER90}
{$DEFINE DELPHI2}
{$ENDIF}

{$IFDEF VER100}
{$DEFINE DELPHI3}
{$ENDIF}

-j

Other Threads