gilles_gros

[8.7.2] using REGEDIT on 64bit system

5 posts in this topic

Hi,

I just upgrade to 8.7.2 release. I did not bump into bit64 problem. I mean, I remove all line bit64[pn] form my config.js file.

But I ran into a problem with REGEDIT command.

Before I was using WPI 8.6.3

my config file was :

prog[pn]=['Activer Windows Update'];uid[pn]=['WUx64'];desc[pn]=['Activer les parammétres de WindowsUpdate'];dflt[pn]=['no'];forc[pn]=['no'];bit64[pn]=['yes'];cat[pn]=['Finalisation'];configs[pn]=['Win7,Licence Free'];cmds[pn]=['{REGEDIT} "%wpipath%\\..\\Windows Seven\\Astuces - Windows 7\\Activer WindowsUpdate - Windows Seven.reg"'];cond[pn]=['getOSver()=="Win7" && FileExists("%wpipath%\\..\\Windows Seven\\Astuces - Windows 7\\Activer WindowsUpdate - Windows Seven.reg")'];pn++;
it was using as REGEDIT C:\Windows\system32\RegEdt32.exe
Now with WPI 8.7.2 it is using C:\Windows\sysWOW64\regedit.exe
(I suppose the difference is related to sysPath32 and sysPath64)
and unfortunately with my .reg file il does not work.
Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update]"AUOptions"=dword:00000002"IncludeRecommendedUpdates"=dword:00000001"ElevateNonAdmins"=dword:00000001

Thanks for any help provided.

Regards,

Gilles

0

Share this post


Link to post
Share on other sites

Anyone can help ?

Beside creating a REGEDIT32 and REGEDIT64, I do not see a clean solution.

Regards

Gilles

0

Share this post


Link to post
Share on other sites

Hi all,

After looking into that issue, I came to the conclusion, that I need 2 REGEDIT command patern as on a 64 bit system, such as Windows 7 I need to include registry key either in the standard hive (64 bits) or in the 32 bit hive (Wow6432Node).

To achieve that I have created a REGEDIT32 patern to force usage of 32 bits entry on a 64 bit system

As I do not use the UI to set my config file I have not looked into the changes that need to be made.

In file installer.js add and replace the case REGEDIT statement by

case 'REGEDIT32' :	if (FileExists(cmd))	{		if (cmd.indexOf(" ") != - 1 && cmd.substr(0, 1) != '"')			cmd = '"'+cmd+'"'; 		cmd='"'+sysPath32+'RegEdit" /S ' + cmd; 		fsoCmd=true;	}	else		cmd = getText(txtErrorRegEditFileExists);	break;case 'REGEDIT' :	if (FileExists(cmd))	{		if (cmd.indexOf(" ") != - 1 && cmd.substr(0, 1) != '"')			cmd = '"'+cmd+'"';		if (OSBits==64) 			cmd='"'+windir+'\\RegEdit" /S ' + cmd;				   		else 			cmd='"'+sysPath32+'RegEdit" /S ' + cmd; 		fsoCmd=true;	}	else		cmd = getText(txtErrorRegEditFileExists);	break

Hope this helps someone.

Regards.

Gilles

0

Share this post


Link to post
Share on other sites

Thz you. That is the problem now.... without "bit64[pn]=['yes'];" ... idk why they remove that option....

0

Share this post


Link to post
Share on other sites

That option was only implemented while we were learning about handling 64 bit issues. All of the internal has been changed to natively run different on x86 or x64.

Thanks for the regedit code suggestion i'll look at adding it in.

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.