Francesco

Please vote: Vista/Win7/Win8 UAC support poll

   15 members have voted

  1. 1. How to make WPI support UAC?

    • Disable UAC before reboot and re-enable it after reboots
      9
    • Maintain UAC always on and remove the incompatible LoadDesktopBeforeInstall option
      3
    • I don't know, but I like turtles!
      3

Please sign in or register to vote in this poll.

37 posts in this topic

As title says. In case of the 2nd choice WPI will always launch with/after explorer.

Edited by Francesco
0

Share this post


Link to post
Share on other sites

If we can get WPI to disable\re-enable uac during install that would be super.

BTW Turtles are awesome!

0

Share this post


Link to post
Share on other sites

Hi, found an interesting reg file which turns off the UAC, may be it will be useful for You:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"EnableLUA"=dword:00000000

Using RegShot i traced tha to undo this change it is necessary to use this:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"EnableLUA"=dword:00000001

But there is one disadvantage: to make this tweak work it is necessary to reboot

Edited by chymax3m
0

Share this post


Link to post
Share on other sites

Hi, found an interesting reg file which turns off the UAC, may be it will be useful for You:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"EnableLUA"=dword:00000000

Using RegShot i traced tha to undo this change it is necessary to use this:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"EnableLUA"=dword:00000001

But there is one disadvantage: to make this tweak work it is necessary to reboot

I already figured out how to disable UAC and how to set a task on reboot but until people vote I'm not writing anything since both workarounds are extremely annoying.

0

Share this post


Link to post
Share on other sites

OK then. I think it would be better to make it optional.

0

Share this post


Link to post
Share on other sites

Will you guys add support for getosver=Win8?

Why do you guys use XP/Vista/Win7, would it not be better to use 5.1/6.0/6.1/6.2 etc? (future proof)

0

Share this post


Link to post
Share on other sites

I really don't want to support 8.

As for the Winver it is mainly because we have always done it that way and it is better for the "Less technically" inclined...

0

Share this post


Link to post
Share on other sites

Would not take much to add Win8 support, since it pretty much runs same as it does on Win7

Also if you use 6.1.x/6.2.x/etc. it would allot be better, because you could also add service pack specific install support. For instance the Microsoft Camera Codec Pack is only compatible with Vista sp2 and not meant for Windows 8, would be nice if we could add these conditions in WPI

Installed OR (WindowsBuild >= 6002) Windows Vista Service Pack 2 or higher is required to install the Microsoft Camera Codec Pack.

NOT (VersionNT > 601) This version of the Microsoft Camera Codec Pack is not compatible with Windows 8 or Windows Server 2012. You can get the codec pack through Windows Update on Windows 8. The codec pack is not available for Windows Server 2012.

0

Share this post


Link to post
Share on other sites

We already have a spver:

function getSPver()
{
position="wmi.js";
whatfunc="getSPver()";

if (szServicePackCache==NOT_FOUND) // this function is called often - get it once and cache the result
{
try
{
objWMIService=GetObject("winmgmts:\\\\" + "." + "\\root\\CIMV2");
colItems=objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly);
enumItems=new Enumerator(colItems);
objItem=enumItems.item();

szServicePackCache=objItem.ServicePackMajorVersion;
}
catch(ex)
{
var sp="";

try
{
sp=WshShell.RegRead("HKLM\\Software\\Microsoft\\Windows NT\\CurrentVersion\\CSDVersion");
}
catch(ex)
{ ; }

if (sp != "")
{
szServicePackCache=sp.substr(sp.length-1,1);
}
}
}

return szServicePackCache;
}

As for the "5.1/6.0/6.1/6.2" IF You and francesco can just add it to the existing code fine. I am not going to tell the thousands and thousands out there that they have to change all of their osver to the 5.1/6.0/6.1/6.2. Only 5% or so of them will listen.

0

Share this post


Link to post
Share on other sites

Not change, if you can support both options would be nice

This MSI LaunchCondition:

Installed OR (WindowsBuild >= 6002) Windows Vista Service Pack 2 or higher is required to install the Microsoft Camera Codec Pack.

NOT (VersionNT > 601) This version of the Microsoft Camera Codec Pack is not compatible with Windows 8 or Windows Server 2012. You can get the codec pack through Windows Update on Windows 8. The codec pack is not available for Windows Server 2012.

In WPI could look like:

getOSver2()>="6.0.6002"&&getOSver2()<="6.1"

It would make WPI "future proof". You wont have to add a Win9/10/11 when/if another operating system comes out it will simply work, one would just have to increase the decimal point

Edited by ricktendo64
0

Share this post


Link to post
Share on other sites

Not change, if you can support both options would be nice

This MSI LaunchCondition:

Installed OR (WindowsBuild >= 6002) Windows Vista Service Pack 2 or higher is required to install the Microsoft Camera Codec Pack.

NOT (VersionNT > 601) This version of the Microsoft Camera Codec Pack is not compatible with Windows 8 or Windows Server 2012. You can get the codec pack through Windows Update on Windows 8. The codec pack is not available for Windows Server 2012.

In WPI could look like:

getOSver2()>="6.0.6002"&&getOSver2()<"6.1"

It would make WPI "future proof". You wont have to add a Win9/10/11 when/if another operating system comes out it will simply work, one would just have to increase the decimal point

You can already read the windows version number from the registry (HKLM\Software\Microsoft\Windows NT\CurrentVersion\CurrentVersion) also you can't compare versions as strings there's a function for that.

0

Share this post


Link to post
Share on other sites

That's the workaround I been using

Edit: (Vista sp2 to Win7 ENU condition)

RegKeyValue("HKLM\Software\Microsoft\Windows NT\CurrentVersion\CurrentVersion")=="6.0"&&RegKeyValue("HKLM\Software\Microsoft\Windows NT\CurrentVersion\CurrentBuild")>="6002"&&getOSlang()=="ENU"||RegKeyValue("HKLM\Software\Microsoft\Windows NT\CurrentVersion\CurrentVersion")=="6.1"&&getOSlang()=="ENU"

Edited by ricktendo64
0

Share this post


Link to post
Share on other sites

Rick & Francesco:

OK I will add support for 8 AND version #'s! BUT I need you guys to help add the code in so we can keep backwards compatability with the current getosver...

Rick I need the current style getosver info for win8.

0

Share this post


Link to post
Share on other sites

6.2.9200 is RTM, I think 6.2.9201 will be SP1, etc

Is that what you meant?

0

Share this post


Link to post
Share on other sites

Naw the Windows 8 code for this section here:

function getOSver()
{
position="wmi.js";
whatfunc="getOSver()";

if (szOSVerCache==NOT_FOUND) // this function is called often - get it once and cache the result
{
var Caption;

try
{
objWMIService=GetObject("winmgmts:\\\\" + "." + "\\root\\CIMV2");
colItems=objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly);
enumItems=new Enumerator(colItems);
objItem=enumItems.item();

Caption=objItem.Caption;

if (Caption.indexOf("Windows 7") != -1)
szOSVerCache="Win7";
if (Caption.indexOf("2008") != -1)
szOSVerCache="08";
if (Caption.indexOf("Vista") != -1)
szOSVerCache="Vista";
if (Caption.indexOf("2003") != -1)
szOSVerCache="03";
if (Caption.indexOf("XP") != -1)
szOSVerCache="XP";
if (Caption.indexOf("2000") != -1)
szOSVerCache="2K";
}
catch(ex)
{
try
{
ver=WshShell.RegRead("HKLM\\Software\\Microsoft\\Windows NT\\CurrentVersion\\CurrentVersion");
}
catch(ex1)
{
try
{
ver=WshShell.RegRead("HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\Version");
}
catch(ex2)
{ ; }
}
if (ver=="5.0")
szOSVerCache="2K";
if (ver=="4.0")
szOSVerCache="NT";
if (ver=="Windows 98")
szOSVerCache="98";
if (ver=="Windows Millennium Edition")
szOSVerCache="ME";
if (ver=="Windows 95")
szOSVerCache="95";
}
}

return szOSVerCache;
}

This is the main part I need:

if (Caption.indexOf("Windows 7") != -1)

I have NO clue what MS is calling it internally.

Edited by Kelsenellenelvian
0

Share this post


Link to post
Share on other sites

Save the attachment as a .vbs and run from a cmd prompt in win8.

Post the displayed info here for me.

Edited by Kelsenellenelvian
0

Share this post


Link to post
Share on other sites

Gives error

C:\Users\<Username>\Downloads>cscript winver.vbs
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

C:\Users\<Username>\Downloads\winver.vbs(39, 1) Microsoft VBScript compilation error: Syntax error

Edited by ricktendo64
0

Share this post


Link to post
Share on other sites

Works fine for me on Windows 7, if I remove: & _

at this line:

 "Build Number    : " & objItem.BuildNumber & vbCrLf

0

Share this post


Link to post
Share on other sites

I already have all the code to recognize win8 but it's pretty pointless since like with vista and win7 nothing that requires reboots works.

In wmi.js it's


if (Caption.indexOf("Windows 8") != -1)
szOSVerCache="Win8";

and in wpi.hta and core.js it's


if (getOSver()=="XP" || getOSver()=="Vista" || getOSver()=="Win7" || || getOSver()=="Win8")

instead of


if (getOSver()=="XP" || getOSver()=="Vista" || getOSver()=="Win7")

Edited by Francesco
0

Share this post


Link to post
Share on other sites

Just for the sake of completeness (Plus I know someone else will ask) I have added it to the next version.

0

Share this post


Link to post
Share on other sites

It's possible to add the WinVer.vbs to WPI, because works fine to give informations ?

It seems some infos are missing inside WPI_Log.txt, like Windows version and Build number:

Result on Oracle VirtualBox

Fichier journal de l'installation WPI

Début de l'installation: jeudi 9 août 2012 13:43:18

Information WPI:

Version=8.5.4

Exécutable utilisé=true

Version d'Internet Explorer=9.0

Connexion Internet=false

Système d'exploitation

Système d'exploitation=Not found

ID Edition=Not found

Service Pack=1

Architecture

Nom de l'Architecture=GenuineIntel

Chaîne du Nom de l'Architecture=Intel® Core™ i5 CPU 650 @ 3.20GHz

ID Architecture=x86 Family 6 Model 37 Stepping 2

Nombre de Processeurs=1

MHz=3063

Type d'Architecture=x86

SysArch6432=NOT_DEFINED

Bits Architecture=32

64 Bits réel=false

Fichier Options=D:\wpi\UserFiles\useroptions.js

Fichier Configuration=D:\wpi\UserFiles\config.js

Fichier Réseau=D:\wpi\UserFiles\networkoptions.js

....

Also using WPI Information options: Computer tab: missing: Windows version, Build number, Language and Localization

Regards

*Edit: thanks to move this post if it is not in the good place but for Request thread!

Edited by myselfidem
0

Share this post


Link to post
Share on other sites

WFM:

Operating System

Operating System=Win7

Edition ID=Not found

Service Pack=1

Architecture

Architecture Name=AuthenticAMD

Architecture Name String=AMD Phenom II X6 1100T Processor

Architecture ID=AMD64 Family 16 Model 10 Stepping 0

Number Of Processors=6

MHz=3300

Architecture Type=AMD64

SysArch6432=NOT_DEFINED

Architecture Bits=64

True 64 Bits=true

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.