added SetRegView lastused

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5269 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2007-09-08 17:27:28 +00:00
parent b0978fc844
commit 754fe7bc49
3 changed files with 5 additions and 3 deletions

View file

@ -67,7 +67,7 @@ Sets the error level of the installer or uninstaller to \e{error_level}. See \R{
\S2{setregview} SetRegView
\c \\<b\\>32\\</b\\>|64
\c \\<b\\>32\\</b\\>|64|lastused
Sets the registry view affected by \R{registry}{registry commands}. On Windows x64 there are two views. One for 32-bit applications and one for x64 applications. By default, 32-bit applications running on x64 systems under WOW64 have access only to the 32-bit view. Using \c{SetRegView 64} allows the installer to access keys in the x64 view of the registry.

View file

@ -3573,12 +3573,14 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
ent.which=EW_SETFLAG;
ent.offsets[0]=FLAG_OFFSET(alter_reg_view);
// "64" results in setting the flag to 1 which alters the view
int k=line.gettoken_enum(1,"32\0" "64\0");
int k=line.gettoken_enum(1,"32\0" "64\0lastused");
if (k<0) PRINTHELP()
if (k == 0) // 32
ent.offsets[1]=add_intstring(0);
else if (k == 1) // 64
ent.offsets[1]=add_intstring(KEY_WOW64_64KEY);
else if (k == 2) // last used
ent.offsets[2]=1;
SCRIPT_MSG("SetRegView: %s\n",line.gettoken_str(1));
}
return add_entry(&ent);

View file

@ -194,7 +194,7 @@ static tokenType tokenlist[TOK__LAST] =
{TOK_SETOVERWRITE,"SetOverwrite",1,0,"on|off|try|ifnewer|ifdiff",TP_ALL},
{TOK_SETPLUGINUNLOAD,"SetPluginUnload",1,0,"(manual|alwaysoff)",TP_ALL},
{TOK_SETREBOOTFLAG,"SetRebootFlag",1,0,"true|false",TP_CODE},
{TOK_SETREGVIEW,"SetRegView",1,0,"32|64",TP_CODE},
{TOK_SETREGVIEW,"SetRegView",1,0,"32|64|lastused",TP_CODE},
{TOK_SETSHELLVARCONTEXT,"SetShellVarContext",1,0,"all|current",TP_CODE},
{TOK_SETSILENT,"SetSilent",1,0,"silent|normal",TP_CODE},
{TOK_SHOWDETAILS,"ShowInstDetails",1,0,"(hide|show|nevershow)",TP_GLOBAL},