Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Install D6 Update 2 now: Supporting original W95 in Delphi 6.02

4 views
Skip to first unread message

John Kaster (Borland)

unread,
Feb 20, 2002, 8:28:13 PM2/20/02
to
Moved this up to increase its visibility:

Jordan Russell mentioned problems with original versions of Windows 95 and
Delphi 6. These are an unofficial, unsupported options, since Windows 95 is an
unsupported OS for Delphi 6.

Anyway, here's your options:

1. Install the Win95 DCOM 1.2 Service pack on those machines that have not
been touched at all since Windows 95 initially shipped.

2. Change the following code in Variants.pas to look like this:

procedure NotViaOS(var Dest: TVarData);
begin
// VarResultCheck(VarNot(Dest, Dest));
end;

procedure NegateViaOS(var Dest: TVarData);
begin
// VarResultCheck(VarNeg(Dest, Dest));
end;

Then include Variants.pas in your project and build without packages.

This should remove any dependencies. All the other string conversion routines
in VarUtils are already available in the original Win95. That includes these
from VarUtils:

function VarI4FromStr(const strIn: WideString; LCID: Integer; dwFlags:
Longint;
out lOut: Longint): HResult; stdcall;
function VarR8FromStr(const strIn: WideString; LCID: Integer; dwFlags:
Longint;
out dblOut: Double): HResult; stdcall;
function VarDateFromStr(const strIn: WideString; lcid: DWORD; dwFlags:
Longint;
out dateOut: TDateTime): HRESULT; stdcall;
function VarCyFromStr(const strIn: WideString; lcid: DWORD; dwFlags: Longint;
out cyOut: Currency): HRESULT; stdcall;
function VarBoolFromStr(const strIn: WideString; LCID: Integer; dwFlags:
Longint;
out boolOut: WordBool): HResult; stdcall;

function VarBstrFromCy(cyIn: Currency; LCID: Integer; dwFlags: Longint;
out bstrOut: WideString): HResult; stdcall;
function VarBstrFromDate(dateIn: TDateTime; LCID: Integer; dwFlags: Longint;
out bstrOut: WideString): HResult; stdcall;
function VarBstrFromBool(boolIn: WordBool; LCID: Integer; dwFlags: Longint;
out bstrOut: WideString): HResult; stdcall;


--
John Kaster, Borland Developer Relations, http://community.borland.com
$1280/$50K: Thanks to my donors!
http://homepages.borland.com/jkaster/tnt/thanks.html
Buy Kylix! http://www.borland.com/kylix * Got source?
http://codecentral.borland.com
The #1 Java IDE: http://www.borland.com/jbuilder

Alessandro Federici

unread,
Feb 20, 2002, 8:50:31 PM2/20/02
to
"John Kaster (Borland)" <jka...@borland.com> wrote in message
news:3C744D2D...@borland.com...

> Jordan Russell mentioned problems with original versions of Windows 95 and
> Delphi 6. These are an unofficial, unsupported options, since Windows 95
is an
> unsupported OS for Delphi 6

That was quick! Clap clap!

Regards,
Alessandro Federici

PS: Now can you take a look at my TP 3.02 bug report of 1989? (<---- just
joking!!!)


Stephan Marais

unread,
Feb 20, 2002, 8:51:56 PM2/20/02
to
> 2. Change the following code in Variants.pas to look like this:
>
>
> Then include Variants.pas in your project and build without packages.

I'm curious: Is that allowed ?

If so, it means that component builders can also use some of the Delphi dfm
files in the sources directory, right?

Stephan Marais

Jeff Overcash (TeamB)

unread,
Feb 20, 2002, 9:06:31 PM2/20/02
to

Use - yes, distribute - no. This can in some instances cause problems like with
the personal edition that comes with no source and therefor might not even have
the dfm found in the source directory. You have always had the right to modify
for your own use the source in the source directories. You may not distribute
those changed files (you may distribute the instructions on how to change the
files, but not the changed files themselves) nor may you build new packages with
the same name as the Borland supplied packages with your changed VCL.

>
> Stephan Marais

--
Jeff Overcash (TeamB)
(Please do not email me directly unless asked. Thank You)
This sad little lizard told me that he was a brontosaurus on his mother's
side. I did not laugh; people who boast of ancestry often have little else
to sustain them. Humoring them costs nothing and ads to happiness in
a world in which happiness is in short supply. (RAH)

John Jacobson

unread,
Feb 20, 2002, 9:30:37 PM2/20/02
to
It is nice of you to take the time to help out people supporting customers
on the unpatched Win95. I can't imagine those customers are getting many
other newer programs to work very well either. That version of Win95 doesn't
have comctrl32.dll (sp?) IIRC.

--

John M. Jacobson
Visit Jake's Delphi Page at http://www.xnet.com/~johnjac


"Oh, no! She's stuck in an infinite loop, and he's an idiot. Oh well,
that's love for you."
-Professor Farnsworth in "Futurama"

"John Kaster (Borland)" <jka...@borland.com> wrote in message
news:3C744D2D...@borland.com...

Jordan Russell

unread,
Feb 20, 2002, 10:06:02 PM2/20/02
to
"John Kaster (Borland)" <jka...@borland.com> wrote in message
news:3C744D2D...@borland.com...
> 2. Change the following code in Variants.pas to look like this:
>
> procedure NotViaOS(var Dest: TVarData);
> begin
> // VarResultCheck(VarNot(Dest, Dest));
> end;
>
> procedure NegateViaOS(var Dest: TVarData);
> begin
> // VarResultCheck(VarNeg(Dest, Dest));
> end;

Hmm, commenting out code makes me a bit uneasy. :)
Is there a reason why Variants.pas can't just be replaced with the
Variants.pas from D6U1? Are other units in D6U2 dependent on the new
Variants.pas?

--
Jordan Russell


Jeff Overcash (TeamB)

unread,
Feb 20, 2002, 10:26:05 PM2/20/02
to

The number of changes for Variants.pas between UP1 and UP2 were significant.
Variants.pas in UP1 was broken in a lot of places. I'm sure there are several
changes in UP2 that expect the correct behavior of the Variants.pas in Up2 and
not the incorrect behavior in UP1.

>
> --
> Jordan Russell

John Kaster (Borland)

unread,
Feb 20, 2002, 11:10:18 PM2/20/02
to
John Jacobson wrote:

> It is nice of you to take the time to help out people supporting customers
> on the unpatched Win95.

Simply time management. I thought I might be able to get a resolution in less
time than it would take to answer the same question over and over.

David Farrell-Garcia

unread,
Feb 20, 2002, 11:17:13 PM2/20/02
to
Wow! That is beyond the call of duty, IMHO. my hat is off to you all.

"John Kaster (Borland)" <jka...@borland.com> wrote in message
news:3C744D2D...@borland.com...

John Kaster (Borland)

unread,
Feb 20, 2002, 11:11:26 PM2/20/02
to
"Jeff Overcash (TeamB)" wrote:
> Variants.pas in UP1 was broken in a lot of places. I'm sure there are several
> changes in UP2 that expect the correct behavior of the Variants.pas in Up2 and
> not the incorrect behavior in UP1.

There should also be some significant performance gains in the new version.

Bob Feldman

unread,
Feb 20, 2002, 11:43:19 PM2/20/02
to
> That was quick! Clap clap!

No kidding....

<STANDING OVATION! />

Richard Grossman

unread,
Feb 21, 2002, 12:24:46 AM2/21/02
to
I'm impressed!

Tony Caduto

unread,
Feb 21, 2002, 12:56:21 AM2/21/02
to
John,
Does this apply to apps that don't use variants?
I know some of the components might pull that in, but if I write a simple
app IE like a console app it's still going to work on old Win95 boxes right?

Tony Caduto
Milwaukee WI


Michael Silver

unread,
Feb 21, 2002, 2:47:06 AM2/21/02
to
John, thanks for the info.

...Michael...

"John Kaster (Borland)" <jka...@borland.com> wrote in message
news:3C744D2D...@borland.com...

Kirys

unread,
Feb 21, 2002, 3:35:21 AM2/21/02
to
On Wed, 20 Feb 2002 17:28:13 -0800, "John Kaster (Borland)"
<jka...@borland.com> wrote:

>Moved this up to increase its visibility:
>
>Jordan Russell mentioned problems with original versions of Windows 95 and
>Delphi 6. These are an unofficial, unsupported options, since Windows 95 is an
>unsupported OS for Delphi 6.
>
>Anyway, here's your options:

what about users of D& personal that cannot alter source code?
Bye
Kirys
--------------------------------------------------
Kirys
Remove REMOVETHIS to reply

Radek Jedrasiak

unread,
Feb 21, 2002, 5:03:33 AM2/21/02
to

"Bob Feldman" <bob_fe...@SPAMFORMEhotmail.com> wrote in message news:3c747b23$1_1@dnews...

> > That was quick! Clap clap!
>
> No kidding....
>
> <STANDING OVATION! />

Shouldn't that be

<OVATION Kind="STANDING" /> ? :^)

Cheerio
Radek, looking at the world through XML Glasses.


Jan Derk

unread,
Feb 21, 2002, 5:48:06 AM2/21/02
to
> 2. Change the following code in Variants.pas to look like this:
>
> procedure NotViaOS(var Dest: TVarData);
> begin
> // VarResultCheck(VarNot(Dest, Dest));
> end;
>
> procedure NegateViaOS(var Dest: TVarData);
> begin
> // VarResultCheck(VarNeg(Dest, Dest));
> end;

Thanks for the quick response.

Anyone has any idea what implications uncommenting this code has? As far
as I can see it these methods are only called for unknown OLE objects
(like IInterface or IUnknown interface pointer according to the Delphi
help file). It seems that for these kind of objects NOT or NEG don't
have a meaning at all. Am I right???

JD

Greg Bielleman

unread,
Feb 21, 2002, 6:10:12 AM2/21/02
to
"Tony Caduto" <tca...@amsoftwaredesign.com> wrote in message
news:3c748bfe_1@dnews...

> app IE like a console app it's still going to work on old Win95 boxes
right?

Tony,

Try i.e not IE - Bill will want licensing fees for the use of his IE ;-)


Steve Gouldstone

unread,
Feb 21, 2002, 6:54:23 AM2/21/02
to
John Jacobson:

>It is nice of you to take the time to help out people supporting customers
>on the unpatched Win95. I can't imagine those customers are getting many
>other newer programs to work very well either. That version of Win95 doesn't
>have comctrl32.dll (sp?) IIRC.

I don't think the issue is that many or any of Borland's customers are
running Win95 for development.

The issue is that programs created with Delphi still need to run on
Win95. A lot of business users (ie *our* customer's not Borland's) are
still running Win95 - crazy or otherwise - and many of us (myself
included) need to be able to write programs that they can run.

I can't say to my business customers "here's my app that will cost you
5000 pounds - oh and by the way you need to upgrade all your systems
to xxx for just half a million".

I wonder how many potential purchasers of your newsreader will still
be running Win95? :-)

Steve

Steve Gouldstone

unread,
Feb 21, 2002, 6:56:07 AM2/21/02
to
John Kaster (Borland):

>Jordan Russell mentioned problems with original versions of Windows 95 and
>Delphi 6. These are an unofficial, unsupported options, since Windows 95 is an
>unsupported OS for Delphi 6.

Thanks. Now I'll go off and get that SP2 and see how it goes...

Steve

Ingvar Nilsen

unread,
Feb 21, 2002, 8:55:45 AM2/21/02
to
Steve Gouldstone wrote:

> The issue is that programs created with Delphi still need to run on
> Win95. A lot of business users (ie *our* customer's not Borland's) are
> still running Win95 - crazy or otherwise - and many of us (myself
> included) need to be able to write programs that they can run.


To the point.
I on my side am not critizing Borland for this at all, most of us
have earlier versions of Delphi that can be used. The thing is that
some Delphi users may get an unpleasant surprise.

Ingvar Nilsen

David R. Robinson

unread,
Feb 21, 2002, 9:00:33 AM2/21/02
to
> > It is nice of you to take the time to help out people supporting
customers
> > on the unpatched Win95.
>
> Simply time management. I thought I might be able to get a resolution
in less
> time than it would take to answer the same question over and over.

Excellent! Nice job John. Wise man too.

David R.


Anders Ohlsson (Borland)

unread,
Feb 21, 2002, 9:57:05 AM2/21/02
to
> what about users of D& personal that cannot alter source code?

They can't redistribute apps either, so the issue is a lot smaller. Win95 is after all
unsupported.

--
Anders Ohlsson - Borland Developer Relations - http://community.borland.com/
Come to Anaheim! Best BorCon ever! - http://www.borland.com/conf2002/
Get the #1 Java IDE! - http://www.borland.com/jbuilder/
Get Kylix now! - http://www.borland.com/kylix/
Cycling to cure cancer - http://homepages.borland.com/jkaster/tnt/
http://homepages.borland.com/aohlsson/disclaimer_ani.gif


Ray Lischner

unread,
Feb 21, 2002, 10:01:32 AM2/21/02
to
On Wednesday 20 February 2002 09:56 pm, Tony Caduto wrote:

> Does this apply to apps that don't use variants?

Any program that uses the Classes unit (which includes all programs that
use forms, data modules, etc.) pull in the Variants unit, which loads
oleaut32.dll. This happens even if you don't use Variants in your program.

The problem is that the program doesn't know whether a DFM will have a
Variant property value stored in it, so the DFM streaming system always has
the Variant-reading code linked in.
--
Ray Lischner, author of Delphi in a Nutshell
http://www.tempest-sw.com/

Ray Lischner

unread,
Feb 21, 2002, 10:03:51 AM2/21/02
to
On Thursday 21 February 2002 02:48 am, Jan Derk wrote:

> Anyone has any idea what implications uncommenting this code has? As far
> as I can see it these methods are only called for unknown OLE objects
> (like IInterface or IUnknown interface pointer according to the Delphi
> help file). It seems that for these kind of objects NOT or NEG don't
> have a meaning at all. Am I right???

You are correct. So don't use the hacked Variants.pas for a program that
uses SOAP, Corba, COM, etc.

Ray Lischner

unread,
Feb 21, 2002, 10:18:11 AM2/21/02
to
On Wednesday 20 February 2002 05:28 pm, John Kaster (Borland) wrote:

> 2. Change the following code in Variants.pas to look like this:

...


> Then include Variants.pas in your project and build without packages.

Another approach doesn't involve changing the source code. Add VarUtils.pas
to the project, and compile with GenericOperations defined in the project
options.

David Marcus

unread,
Feb 21, 2002, 11:33:26 AM2/21/02
to
While the discussion of what platforms Delphi officially supports is
interesting, I think a more relevant question is how easy it would be
for Borland to modify this particular change so exe's would still run on
ancient versions of Windows 95. If it isn't particulary hard, then it
would seem this would be good to do in this case, with the understanding
that Borland would not promise to do this in the future.

--
David Marcus

Tony Caduto

unread,
Feb 21, 2002, 11:16:29 AM2/21/02
to
Damn him :-)

Tony
"Greg Bielleman" <gbie...@NoSpam.bigpond.net.au> wrote in message
news:3c74d589_1@dnews...

Julian M Bucknall [TurboPower]

unread,
Feb 21, 2002, 11:44:05 AM2/21/02
to
John

On Wed, 20 Feb 2002 20:11:26 -0800, "John Kaster (Borland)"
<jka...@borland.com> wrote:

>There should also be some significant performance gains in the new version.

Naturally, if you have to comment out code <gd&r>


Cheers, Julian

-----------------------------------------------------------
Julian M Bucknall
nospam...@turbopower.com (delete nospam)
TurboPower Software Company - www.turbopower.com
Personal - www.boyet.com, www.home.turbopower.com/~julianb
Author of "Tomes of Delphi: Algorithms and Data Structures"
Read Algorithms Alfresco in The Delphi Magazine every month
-----------------------------------------------------------

John Kaster (Borland)

unread,
Feb 21, 2002, 2:27:16 PM2/21/02
to
"Julian M Bucknall [TurboPower]" wrote:
> Naturally, if you have to comment out code <gd&r>

<smack!> (As in, with a trout, not a kiss.)

Alexis Rios

unread,
Feb 21, 2002, 5:03:57 PM2/21/02
to
Win95 is officially dead for Microsoft (unsupported) so why should I care..

Should I care about writing DOS applications or Win 3.1 apps or the old
Win95? If people still use it, it's their problem not Borland's

People should move on!!

To new stuff

Steve Gouldstone <st...@langdaledesigns.co.uk> wrote in message
news:lgn97u41te3jpbh7n...@4ax.com...

Jordan Russell

unread,
Feb 21, 2002, 5:28:39 PM2/21/02
to
"Alexis Rios" <a_r...@hotmail.com> wrote in message news:3c757031_2@dnews...

> Win95 is officially dead for Microsoft (unsupported) so why should I
care..

I'd like to see your customers' reactions when you tell them that...

> Should I care about writing DOS applications or Win 3.1 apps or the old
> Win95? If people still use it, it's their problem not Borland's

Again, it's not so much a problem that Borland decided to quit "certifying"
Windows 95, it's that Windows 95 support was forcefully removed in a
*patch*.

--
Jordan Russell


J Hall

unread,
Feb 21, 2002, 6:36:01 PM2/21/02
to
In article <3c75749a_2@dnews>, jr_...@jrsoftware.org wrote...

Hi,

> Again, it's not so much a problem that Borland decided to quit "certifying"
> Windows 95, it's that Windows 95 support was forcefully removed in a
> *patch*.

How can support for Win95 be removed, when D6 did not support Win95 in
the first place? The fact that some apps compiled with D6 worked on
Win95, was more down to luck than anything else.

J

Jan Derk

unread,
Feb 21, 2002, 6:45:17 PM2/21/02
to
>>Again, it's not so much a problem that Borland decided to quit "certifying"
>>Windows 95, it's that Windows 95 support was forcefully removed in a
>>*patch*.

> How can support for Win95 be removed, when D6 did not support Win95 in
> the first place?

Fact: D6 apps ran without any problems on Windows 95, they did not after
SP2.

> The fact that some apps compiled with D6 worked on
> Win95, was more down to luck than anything else.

No, it was good old Borland engineering. By creating a great VCL it hold
for a long time even without certification.

JD

John Jacobson

unread,
Feb 23, 2002, 12:36:13 PM2/23/02
to
None. System requirements for the newsreader will be a real multitasking
system like Windows NT 4.0 or Win2K. Depending on my tests on Windows Me, I
might just have the program automatically detect the OS and shut down (with
a message explaining why) if it is running on variants of Windows 95.

--

John M. Jacobson
Visit Jake's Delphi Page at http://www.xnet.com/~johnjac


"Oh, no! She's stuck in an infinite loop, and he's an idiot. Oh well,
that's love for you."
-Professor Farnsworth in "Futurama"

"Steve Gouldstone" <st...@langdaledesigns.co.uk> wrote in message
news:lgn97u41te3jpbh7n...@4ax.com...

Jan Derk

unread,
Feb 23, 2002, 1:46:18 PM2/23/02
to
> None. System requirements for the newsreader will be a real multitasking
> system like Windows NT 4.0 or Win2K. Depending on my tests on Windows Me, I
> might just have the program automatically detect the OS and shut down (with
> a message explaining why) if it is running on variants of Windows 95.

That'll be the geeks only newsreader then <g>. I assume it will also run
on XP. It's probably a good idea to let the installer prevent
installations on Win9x platforms.

JD

John Jacobson

unread,
Feb 23, 2002, 4:21:45 PM2/23/02
to
In borland.public.delphi.non-technical, Jan Derk <jan...@hotmail.com> wrote in message <3C77E37A...@hotmail.com>...

>That'll be the geeks only newsreader then <g>. I assume it will also run

>on XP. It's probably a good idea to let the installer prevent

>installations on Win9x platforms.


Yep. It is being designed for power users.


***Posted by Jake's Custom Newsgroup Reader***

Anders Ohlsson (Borland)

unread,
Feb 23, 2002, 10:52:56 PM2/23/02
to
> restrictions in this License Agreement. You may distribute your Works to others.
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

I stand corrected.

Brion L. Webster

unread,
Feb 27, 2002, 11:56:29 AM2/27/02
to
"Anders Ohlsson (Borland)" <aohl...@borland.com> wrote...

> > restrictions in this License Agreement. You may distribute your Works to
others.
> >
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> I stand corrected.

I think you're remembering the academic license, which prohibits transmission
to others, except other academic licensees.

--
-Brion
Team JEDI, 2001 Spirit of Delphi Award Winners
http://www.delphi-jedi.org
Fresno Area Delphi Users Group
http://groups.yahoo.com/group/FresnoDelphi


0 new messages