PDA

View Full Version : Windows version detection



NewsArchive
05-15-2009, 01:14 AM
Does SB use the "GetVersion(),DWORD,PASCAL" API call to establish the
Windows version?

The reason I ask is because my programs use that... and on *one* computer
only is returning "Windows 95" on a WinXP computer (I haven't seen the
computer, but the owner swears it is XP!).

We are soon to upgrade that shop, and I'm interested in what SB will
make of it.. whether it will correctly determine the version...

Steve

NewsArchive
05-15-2009, 01:21 AM
Are you SURE she hasn't checked the Compatibility mode box?
If so, the first (default) choice on XP is Win 95.

Jane

NewsArchive
05-15-2009, 01:23 AM
RU saying that checking a compatibility box will get Windows to return the
WRONG version of itself?

I find that hard to believe...

Steve Bywaters

NewsArchive
05-15-2009, 01:24 AM
Steve,

> RU saying that checking a compatibility box will get Windows to return the
> WRONG version of itself?
>
> I find that hard to believe...

Why? For it to emulate a different version it has to emulate a
different version!<g>

--
Lee White

Enroll Today at http://CWaddons.com

NewsArchive
05-15-2009, 01:25 AM
And the computer is still *actually* running XP - so it is lying.

Emulation != Actually-being-something


I will be interested to see what API Friedrich is using... no doubt he has
already run into and solved this anomaly (or we would all have nightmares
with installation on different versions of Windows)

Steve Bywaters

NewsArchive
05-15-2009, 01:26 AM
Steve,

> And the computer is still *actually* running XP - so it is lying.

Because the user requested it to lie!<g>

The very simple CLW/PRJ attached will give the different results when
the compatibility is changed.

--
Lee White

Enroll Today at http://CWaddons.com

NewsArchive
05-15-2009, 01:27 AM
I haven't tried it... but if somebody downloaded an installer, created a
shortcut for it, and set an emulation mode in the shortcut... I'd imagine
the installer would report wrong information.
Fortunately, that's not what users typically do.

My post was questioning what the user might have done to the shortcut for
your app once it had been installed.

Jane Fleming

NewsArchive
05-15-2009, 01:28 AM
Yes, you may be right in what the fearless user did.!

My point is that this is IMNSHO plain *wrong* - as I rather elegantly put it
<g>
>> Emulation != Actually-being-something

Steve Bywaters

NewsArchive
05-15-2009, 01:29 AM
au contraire...

emulation := actually being emulation.

Emulation exists so that software that checks what the OS version is and is
too stupid to recognize a later OS doesn't just refuse to run.

As Lee put it - by requesting emulation you're telling the sweet obedient OS
to lie to the app you're trying to run. What kind of a liar would it be if
the app could just call some API and circumvent this?????

Jane Fleming

NewsArchive
05-15-2009, 01:30 AM
> au contraire...
> emulation := actually being emulation.
Absolument pas, ma belle femme!

Using French don't make it so ... ;-)


> What kind of a liar would it be if the app could just call some API and
> circumvent this?????

Not as bad a liar as an API that actually reports an incorrect version!
How is one EVER to find out what O/s is really on the machine?
To me - a much bigger 'lie'

S.

BTW the call has been put in to the shop owner.... answer still to emerge.

NewsArchive
05-15-2009, 01:30 AM
> Not as bad a liar as an API that actually reports an incorrect version!
> How is one EVER to find out what O/s is really on the machine?
> To me - a much bigger 'lie'

So what OS should be returned to an app that asks "What am I running on?"
when it is running on an XP guest under VMWare Workstation running on
Vista64?

Likewise, what about when the XP guest is running under VMWare Fusion on
the Macintosh?
--

Mark Riffey
http://www.rescuemarketing.com/blog/
If Guy Kawasaki and the staff of the Wall Street Journal,
Fast Company & Business Week read it, maybe you should too.

NewsArchive
05-15-2009, 01:31 AM
Sorry you find it hard to believe, Steve.

Test it yourself, as I did in one of my Vista articles for clarionmag a
couple of years back: http://www.clarionmag.com/cmag/v9/v9n05vista3b.html
(scroll down to "sometimes a cigar is a cigar"...)

Jane Fleming

NewsArchive
05-15-2009, 01:31 AM
> RU saying that checking a compatibility box will get Windows to return the
> WRONG version of itself?
>
> I find that hard to believe...

But 100% correct.

Windows Compatibility mode enables the execution of Windows program in an
environment that mirrors earlier versions of the operating system. For
example, you can execute your application in a Windows XP environment that
is running the program as if the operating system was Windows 95. The
system emulates an older operating system, and/or hardware platform in order
to allow obsolete software to remain compatible with the computer's newer
hardware or software.

--
Friedrich Linder
Lindersoft
www.lindersoft.com
+1.954.252.3910

SetupBuilder is installation -- "point. click. ship"

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
05-15-2009, 01:36 AM
1. "Vista 64"

2. "Not a Windows version"

+ If it doesn't already exist, there would be an GetEmulatedVersion API
call....


Well, you asked... <g>

Steve Bywaters

NewsArchive
05-15-2009, 01:37 AM
So SB would also be 'fooled'....

ok - thanks for the info.

Steve Bywaters

NewsArchive
05-15-2009, 01:37 AM
Jane,

*** IT'S OFFICIAL- YOU'RE A GENIUS ***

Reply from shop confirms your hunch.

Ta!

Steve Bywaters

NewsArchive
05-15-2009, 01:52 AM
> I haven't tried it... but if somebody downloaded an installer, created a
> shortcut for it, and set an emulation mode in the shortcut... I'd imagine
> the installer would report wrong information.
> Fortunately, that's not what users typically do.

And some developers even rely on that "Compatibility Mode" because their
application is not compatible with the latest operating systems. In this
case, they use the "Set App Compatibility Mode..." SetupBuilder script
function (see attached screenshot). This function was a lifesaver for
quite a few developers in the early days of Vista. And I fear, still is.

--
Friedrich Linder
Lindersoft
www.lindersoft.com
+1.954.252.3910

SetupBuilder is installation -- "point. click. ship"

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
05-16-2009, 02:16 AM
> 1. "Vista 64"

And what XP API has the ability to detect VMWare much less detect an OS
that wasnt written when the XP API was completed?

>
> 2. "Not a Windows version"
>
> + If it doesn't already exist, there would be an GetEmulatedVersion API
> call....
>

In both cases above, why not take it as literally as you appear to
interpret it? Why doesnt the API reply "BIOS"?

--

Mark Riffey
http://www.rescuemarketing.com/blog/
If Guy Kawasaki and the staff of the Wall Street Journal,
Fast Company & Business Week read it, maybe you should too.

NewsArchive
05-16-2009, 02:17 AM
err... I was joking....

But I believe MS are getting right on my idea of the new API call...

duh

Steve Bywaters

NewsArchive
05-16-2009, 02:17 AM
> But I believe MS are getting right on my idea of the new API call...

I agree, that would be useful, especially for software that is capable of
taking action based on it.

Like message('Dude, why arent you using our Mac version?')
--

Mark Riffey
http://www.rescuemarketing.com/blog/
If Guy Kawasaki and the staff of the Wall Street Journal,
Fast Company & Business Week read it, maybe you should too.

NewsArchive
05-16-2009, 02:18 AM
By the way, and the "Set App Compatibility Mode..." function can also be
used to REMOVE compatibility mode.

Friedrich

--
Friedrich Linder
Lindersoft
www.lindersoft.com
+1.954.252.3910

SetupBuilder is installation -- "point. click. ship"

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
05-16-2009, 02:18 AM
>> I haven't tried it... but if somebody downloaded an installer, created a
>> shortcut for it, and set an emulation mode in the shortcut... I'd imagine
>> the installer would report wrong information.
>> Fortunately, that's not what users typically do.
>
> And some developers even rely on that "Compatibility Mode" because their
> application is not compatible with the latest operating systems. In this
> case, they use the "Set App Compatibility Mode..." SetupBuilder script
> function (see attached screenshot). This function was a lifesaver for
> quite a few developers in the early days of Vista. And I fear, still is.

Friedrich,

ALL too true...

Clarion programs - Making App Data UAC (Vista) safe and XP compatible

http://profileexchanges.com/blog/?p=120

has definitely helped some - "break through", but it's simple start...

HOWEVER, More sophisticated help is ON the way!

I will updating the blog soon with one of the most breakthough approaches
that will definitely bring any Clarion developer into the modern UAC -
Vista - Windows 7 era - IF they are willing.

AND, of course, it will fully complement the powerful SetupBuilder
technology!

David

--
From David Troxell - Product Scope 7 - Encourager Software
Clarion Third Party Profile Exchange Online
http://encouragersoftware.com/profile/clarlinks.html
Profile Exchanges - www.encouragersoftware.com/profile/
http://www.profileexchanges.com/blog/

NewsArchive
05-16-2009, 02:19 AM
> And some developers even rely on that "Compatibility Mode" because their

Not the case here.. just a 'rogue user' <g> who had (for some unknown
reason) switched it on in the shortcut.... my app certainly does not want
W95 mode!

I'm still amazed that's how the API works, but indeed it does seem to be the
case....

Tx

Steve Bywaters

NewsArchive
05-16-2009, 02:20 AM
>> And some developers even rely on that "Compatibility Mode" because their
>
> Not the case here.. just a 'rogue user' <g> who had (for some unknown
> reason) switched it on in the shortcut.... my app certainly does not want
> W95 mode!

Of course, I did not mean you :) But I know quite a few developers who have
to use that "Compatibility Mode" function to switch their applications into
XP mode on Vista. Otherwise, their apps would not work at all on the new
operating systems.

--
Friedrich Linder
Lindersoft
www.lindersoft.com
+1.954.252.3910

SetupBuilder is installation -- "point. click. ship"

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
05-16-2009, 02:21 AM
Hi Steve,

> RU saying that checking a compatibility box will get Windows to return the
> WRONG version of itself?

It has to! Otherwise the software couldn't run in compatibility mode, could
it?<g> Windows emulates the version it is setting up compatibility with so
that the software can run.

Best regards,

--
Arnór Baldvinsson - Icetips Alta LLC
Port Angeles, Washington
www.icetips.com - www.buildautomator.com

Icetips product subscriptions at http://www.icetips.com/subscribe.php

NewsArchive
05-16-2009, 02:22 AM
> Jane,
>
> *** IT'S OFFICIAL- YOU'RE A GENIUS ***

Steve,

Be careful with this Genius calling stuff - it might offend some of the:

Other "geniuses" in the Clarion community -

probably more politically correct to say -

Jane is my FAVORITE "Clarion community genius"! :-D

David

--
From David Troxell - Product Scope 7 - Encourager Software
Clarion Third Party Profile Exchange Online
http://encouragersoftware.com/profile/clarlinks.html
Profile Exchanges - www.encouragersoftware.com/profile/
http://www.profileexchanges.com/blog/

NewsArchive
05-16-2009, 02:23 AM
Well, Steve... we gentle docile females do love getting affirmation from
the mother ship (er... father ship)...LOL....

BTW... sometimes experience isn't actually a "hunch" ;-)

It occurred to me after my posts last night that the granddaddy of what's
tweaked your incredulity is the old DOS SETVER command
http://support.microsoft.com/kb/96767
Fooling apps is a time-honored Microsoft tradition!

Jane