PDA

View Full Version : Clarion 6 on Vista and Clarion Version Detection for 3rd Party Products



NewsArchive
03-30-2007, 10:26 AM
All,

As you probably know, the Windows Vista operating system provides a new
security feature named User Account Control (UAC). A Vista-aware installer
is required in order to correctly install your installations on Vista. The
same is true for Windows "Longhorn" (beta).

Even if your 3rd party vendor provides a Vista-aware installer, it's not
possible to correctly auto-detect the installed Clarion version.

The original Clarion 6 installer is unable to write to the win.ini file on
Windows Vista (or Windows "Longhorn") because this action requires
administration execution level privileges.

We have developed a small free "Clarion 6 Vista Installation Fix" installer
compiled with SetupBuilder 6.5.

You can download this code-signed application at:
http://lindersoft.com/c6_vista_fix.exe

You can use this on Windows Vista and Windows "Longhorn".

Just follow the wizard to apply the fix and all 3rd party installers should
be able to auto-detect your Clarion 6 environment on Vista.

To uninstall the "Clarion 6 Vista Installation Fix", just start
"c6_vista_fix.exe" again or use the "Uninst_Clarion 6 Installation Fix for
Vista.exe" uninstaller application located in your Clarion 6 folder.

Hope this helps.


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

"point. click. ship" - that's SetupBuilder 6
Create Windows Vista ready installations in minutes

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
03-30-2007, 10:26 AM
Thanks Friedrich! Great! Thanks...

This was part of the problem that I had with Clarion Desktop this week. I
found that Clarion 6 actually updates the
"c:\users\[username]\AppData\Local\VirtualStore\Windows\Win.INI" file, but
(here's the kicker) if I tried to read that file using Clarion's GETINI
function, that would GPF my EXE!!! Not always, but on about 20% of
computers consistently. I am now actually copying that INI file to another
folder where my EXE can then read it safely!

Clarion 5.5 updates the regular Win.Ini in "c:\Windows", and I can read that
file safely..

Best Regards,

Gary.

Gary James
Strategy, South Africa
Web: www.strategyonline.co.za
Blog: www.strategyonline.co.za/blog

NewsArchive
04-02-2007, 02:56 AM
Hi Gary,

>function, that would GPF my EXE!!! Not always, but on about 20% of
>computers consistently. I am now actually copying that INI file to another
>folder where my EXE can then read it safely!

Did you enclose the path in double quotes? You might have problems
with it if you don't or use ShortPath. Also, did you try to use the
GetPrivateProfileString API instead of GetINI?

http://msdn2.microsoft.com/en-us/library/ms724353.aspx

Best regards,

Arnór Baldvinsson
Icetips Creative, Inc.
San Antonio, Texas, USA
www.icetips.com


Subscribe to information from Icetips.com:
http://www.icetips.com/subscribe.php

NewsArchive
04-02-2007, 03:01 AM
Friedrich,

In my registry under local machine is a Softvelocity entry that has the
version, patch level and the installed directory.

Best Regards,

Michael Gould

NewsArchive
04-02-2007, 03:01 AM
Michael,

Yes. The "Clarion 6 Vista Installation Fix" uses this registry information
to set the default installation path.

But this registry information cannot be used to detect your Clarion edition.
And it does not give you information on the Clarion IDE executable name (to
automatically register templates). In short, most (95%) 3rd party
installers fail under Vista and Longhorn because of this issue.

Friedrich

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

"point. click. ship" - that's SetupBuilder 6
Create Windows Vista ready installations in minutes

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
04-02-2007, 03:01 AM
Friedrich,

I totally forgot about the exe name. It could be PE or EE.

Thanks

Mike Gould

NewsArchive
04-02-2007, 03:02 AM
Friedrich:

Thanks for the fix. May we include it in our installs so we can instruct the
user to run it when necessary?

Larry Teames
CPCS, Inc.

NewsArchive
04-02-2007, 03:02 AM
Larry,

Yes, Sir :) "c6_vista_fix.exe" can be freely redistributed!

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

"point. click. ship" - that's SetupBuilder 6
Create Windows Vista ready installations in minutes

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
04-02-2007, 03:02 AM
Friedrich,

I'm guessing there's a way of detecting the OS from our SB installs. Any
chance of a quick pointer (to save us from all delving)?

I'm guessing that the c6_vista_fix.exe program would be able to run multiple
times even if it's not required without damage (IOW you need to run it once,
but can you run it harmlessly after the initial run)?

I'm also guessing that if a dev upgrades from 9053 to 9055, they'll need to
re-run the c6_vista_fix.exe program?

Thanks

--
Geoff (Capesoft)

CapeSoft - where the computer obeys you!!
www.capesoft.com

NewsArchive
04-02-2007, 03:02 AM
Hi Geoff,

> I'm guessing there's a way of detecting the OS from our SB installs. Any
> chance of a quick pointer (to save us from all delving)?

Yes, absolutely no problem.

If %WINVER% Equals "$WIN_VISTA$" Then
Display Message Box "This is a Vista OS." -- "Vista machine"
End

And in the upcoming SetupBuilder 6.5

If %WINVER% Equals "$WIN_VISTA$" Or %WINVER% Equals "$WIN_LONGHORN$" Then
Display Message Box "This is a Vista or Longhorn OS." -- "Vista or
Longhorn machine"
End

> I'm guessing that the c6_vista_fix.exe program would be able to run
> multiple times even if it's not required without damage (IOW you need to
> run it once, but can you run it harmlessly after the initial run)?

Yes. The installer application detects a previously installed fix.

> I'm also guessing that if a dev upgrades from 9053 to 9055, they'll need
> to re-run the c6_vista_fix.exe program?

No need to re-run the c6_vista_fix.exe program. The fix is "permanent".

Friedrich

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

"point. click. ship" - that's SetupBuilder 6
Create Windows Vista ready installations in minutes

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
04-02-2007, 03:03 AM
Thanks a lot Friedrich.

>Hope this helps.
---------------------------------------
Paul Blais - Hayes, Virginia

NewsArchive
04-02-2007, 03:03 AM
What does the fix do?
Registry Ini mapping?

Carl Barnes

NewsArchive
04-02-2007, 03:03 AM
Carl,

> What does the fix do?
> Registry Ini mapping?

It fixes the win.ini. You cannot manually change the win.ini under Vista.

>>The original Clarion 6 installer is unable to write to the win.ini file on
>>Windows Vista (or Windows "Longhorn") because this action requires
>>administration execution level privileges.
>
> Would "Run as Admin" work?

No!

Friedrich

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

"point. click. ship" - that's SetupBuilder 6
Create Windows Vista ready installations in minutes

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
04-03-2007, 01:48 AM
FWIW, Using SB6's GET INI VALUE, if I run under Vista and specify "WIN.INI"
(unqualified by path), it appears to return the correct value from the "users"
win.ini. This may be of help to some.

Larry Teames
CPCS, Inc.

NewsArchive
04-03-2007, 01:49 AM
Thanks Arnor, I'll look into that. I'm not using double-quotes on the INI
filename, I'll try that and see if it helps. Strangely, it works perfectly
100% of the time here, it's only on some of my clients machines that it
consistently blows up.. For now I'm just copying the local INI to another
folder and reading it from there, that seems to work fine.

Hi Larry. Yes, the same works from within Clarion. Specifying
GetIni(...,'win.ini') will correctly (and safely) read the windows\win.ini
file. The local users win.ini needs to be read by specifying the path to
their user folder.

Best Regards,

Gary.

Gary James
Strategy, South Africa
Web: www.strategyonline.co.za
Blog: www.strategyonline.co.za/blog

NewsArchive
04-03-2007, 01:49 AM
Gary:

I'm seeing the opposite on my Vista machine. When no path is specified (from
w/i SB6) it appears to look in the "users" win.ini rather than the windows
win.ini.

Larry Teames
CPCS, Inc.

NewsArchive
04-03-2007, 10:43 AM
Hi Larry.

Shucks. I'm sensing problems on the horizon..

I'm now specifying [Windows]\Win.ini. Just to be safe. It seems that Vista
supports "older" applications nicely by simply remapping Windows and Program
Files data into a user-specific location. This works well ito backward
compatibility, but it's going to add some additional complexity to knowing
exactly what data is now stored where.. Not a big deal, but it's a deal
we'll have to be aware of.

Best Regards,

Gary.

Gary James
Strategy, South Africa
Web: www.strategyonline.co.za
Blog: www.strategyonline.co.za/blog

NewsArchive
04-03-2007, 10:43 AM
Yep!

Larry Teames
CPCS, Inc.

NewsArchive
04-03-2007, 10:47 AM
Hi Gary,

To make it even worse, Microsoft intends to remove virtualization from
future versions of the Vista operating system as more applications are
migrated to Windows Vista. It's already disabled by default on Vista
x64. Operations subjected to virtualization in 32-bit applications
will just fail in 64-bit. Developers should not rely on Virtualization.

Friedrich

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

"point. click. ship" - that's SetupBuilder 6
Create Windows Vista ready installations in minutes

-- Official Comodo Code Signing and SSL Certificate Partner

NewsArchive
04-06-2007, 06:04 AM
Hi Friedrich.

Shucks!! Thanks for letting us know.. Much appreciated..

Best Regards,

Gary.

Gary James
Strategy, South Africa
Web: www.strategyonline.co.za
Blog: www.strategyonline.co.za/blog