Added FlushINI

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@2319 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2003-03-17 13:23:01 +00:00
parent 2bae57a3ac
commit 1c6dc531e6
5 changed files with 16 additions and 0 deletions

View file

@ -36,6 +36,8 @@
\b WriteINIStr with empty value works again
\b Added FlushINI
\e{v2.0b2}
\b NSIS Menu: links to all NSIS utitlies, documentation and websites

View file

@ -42,6 +42,12 @@ Set user variable $x with the name of the 'index'th registry value in root_key\\
Expands environment variables in "string" into the user variable $x. If error, the variable is set to empty, and the error flag is set.
\S2{flushini} FlushINI
\c ini_filename
Flushes the INI file's buffers. Windows 9x keeps all changes to the INI file in memory. This command causes the changes to be written to the disk immediately. Use it if you edit the INI manually, delete it, move it or copy it right after you change it with \R{writeinistr}{WriteINIStr}, \R{deleteinisec}{DeleteINISec} or \R{deleteinistr}{DeleteINStr}.
\S2{readenvstr} ReadEnvStr
\c user_var(output) name

View file

@ -3265,6 +3265,11 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
line.gettoken_str(2),vname,space,line.gettoken_str(1));
}
return add_entry(&ent);
case TOK_FLUSHINI:
ent.which=EW_WRITEINI;
ent.offsets[3]=add_string(line.gettoken_str(1));
SCRIPT_MSG("FlushINI: %s\n",line.gettoken_str(1));
return add_entry(&ent);
case TOK_WRITEINISTR:
ent.which=EW_WRITEINI;
ent.offsets[0]=add_string(line.gettoken_str(2));
@ -3287,6 +3292,7 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
#else//!NSIS_SUPPORT_INIFILES
case TOK_DELETEINISEC:
case TOK_DELETEINISTR:
case TOK_FLUSHINI:
case TOK_WRITEINISTR:
case TOK_READINISTR:
ERROR_MSG("Error: %s specified, NSIS_SUPPORT_INIFILES not defined.\n", line.gettoken_str(0));

View file

@ -62,6 +62,7 @@ static tokenType tokenlist[TOK__LAST] =
{TOK_FINDFIRST,"FindFirst",3,0,"$(user_var: handle output) $(user_var: filename output) filespec"},
{TOK_FINDNEXT,"FindNext",2,0,"$(user_var: handle input) $(user_var: filename output)"},
{TOK_FILE,"File",1,-1,"[/nonfatal] [/a] ([/r] filespec [...]|/oname=outfile one_file_only)"},
{TOK_FLUSHINI,"FlushINI",1,0,"ini_file"},
{TOK_RESERVEFILE,"ReserveFile",1,-1,"[/nonfatal] [/r] file [file...]"},
{TOK_FILECLOSE,"FileClose",1,0,"$(user_var: handle input)"},
{TOK_FILEERRORTEXT,"FileErrorText",0,2,"[/LANG=lang_id] [text (can contain $0)]"},

View file

@ -122,6 +122,7 @@ enum
TOK_WRITEREGDWORD,
TOK_DELETEINISEC,
TOK_DELETEINISTR,
TOK_FLUSHINI,
TOK_WRITEINISTR,
TOK_CREATESHORTCUT,
TOK_FINDWINDOW,