remove opsi and change to 7z create
This commit is contained in:
42
libexec/inifile/GetOutput.txt
Normal file
42
libexec/inifile/GetOutput.txt
Normal file
@@ -0,0 +1,42 @@
|
||||
To read statements from an INI file you have to capture the output
|
||||
of INIfile.exe, which can be done either by ...
|
||||
|
||||
+ redirecting the output into a temporary file (all Windows versions),
|
||||
+ using a FOR /F construct (requires Win2000, XP ++)
|
||||
|
||||
Assuming you have the INI file "My.ini" in the current directory,
|
||||
with a section [Profile], and the item "Name":
|
||||
|
||||
[Profile]
|
||||
Name=John Doe
|
||||
|
||||
+++ Example with output redirection:
|
||||
|
||||
INIfile.exe My.ini [Profile] Name > temp.bat
|
||||
call temp.bat
|
||||
|
||||
INIfile.exe outputs the statement: SET Name=John Doe
|
||||
which is redirected and written into "temp.bat",
|
||||
which is CALLed to run the SET statement.
|
||||
|
||||
Note that this method produces a temporary file that you have
|
||||
to delete later.
|
||||
|
||||
|
||||
+++ Example with FOR construct (asssuming in a batch file):
|
||||
|
||||
for /f "delims=" %%a in ('INIfile.exe My.ini [Profile] Name') do %%a
|
||||
|
||||
This will capture and run the output line(s) from the command
|
||||
which is enclosed in single(!) quote marks.
|
||||
Double quote marks may be used within the command, if necessary.
|
||||
For details see FOR /? at the command prompt.
|
||||
|
||||
|
||||
In any case the variable %Name% will hold the string that was assigend
|
||||
in the INI file. Note that the variable may be empty.
|
||||
|
||||
***
|
||||
|
||||
|
||||
|
||||
121
libexec/inifile/inifile.txt
Normal file
121
libexec/inifile/inifile.txt
Normal file
@@ -0,0 +1,121 @@
|
||||
INIFILE - 32 bit tool, Ver 1.6 (c) 2006-2009, Horst Schaeffer
|
||||
-------------------------------------------------------------
|
||||
|
||||
This tool handles Windows type INI files with section names in square brackets,
|
||||
and assignments of the form: item=string (case ignored for section and item names).
|
||||
The INI file must exist!
|
||||
This program uses the functions supplied by the Microsoft Windows API.
|
||||
|
||||
++++ Change or add an assignment
|
||||
|
||||
Syntax: INIFILE inifileName [section] item=string
|
||||
|
||||
Example: INIFILE c:\some\where\program.ini [Profile] Name=John
|
||||
|
||||
The string is taken up to the end of the line.
|
||||
Optionally, the (entire!) assignment may be enclosed in (double) quote marks
|
||||
(in case there are redirection symbols in it).
|
||||
In any case the item name as well as the string will be taken without leading
|
||||
and trailing spaces.
|
||||
|
||||
Example: INIFILE c:\some\where\program.ini [Profile] "Name = John"
|
||||
|
||||
If the item is not found, a new line will be added.
|
||||
If the section is not found it will be generated.
|
||||
|
||||
|
||||
++++ Remove assignment
|
||||
|
||||
To remove an item: omit the string (the equal sign is mandatory)
|
||||
|
||||
Syntax: INIFILE inifileName [section] item=
|
||||
|
||||
Example: INIFILE c:\some\where\program.ini [Profile] Name=
|
||||
|
||||
The complete item (not just the assigned string) is removed.
|
||||
If there are no items left, the section will NOT be removed.
|
||||
No error will be reported (Errorlevel), if the item does not exist.
|
||||
|
||||
++++ Clear assignment
|
||||
|
||||
If you want to produce an empty assignment without removing it,
|
||||
use two equal signs.
|
||||
|
||||
Syntax: INIFILE inifileName [section] item==
|
||||
|
||||
|
||||
++++ Remove entire section
|
||||
|
||||
To remove a section the security option /REMOVE (case ignored)
|
||||
is required. No error reported, if the section does not exist.
|
||||
|
||||
Syntax: INIFILE inifileName [section] /remove
|
||||
|
||||
|
||||
++++ Get an assignment
|
||||
|
||||
Syntax: INIFILE inifileName [section] item
|
||||
|
||||
(Note that an additional equal sign would remove the item!!!)
|
||||
|
||||
The program will generate a SET statement, and send it to STDOUT.
|
||||
If you want to produce an environmental variable, redirect the output
|
||||
to a temporary batch file, and execute it (see also: GetOutput.txt)
|
||||
Note: Character set is ANSI (Windows), not OEM (DOS).
|
||||
|
||||
Example:
|
||||
INIfile c:\some\where\program.ini [Profile] Name > temp.bat
|
||||
call temp.bat
|
||||
|
||||
If the assignment could not be found for any reason,
|
||||
the SET statement will be empty (set var=), which clears the variable.
|
||||
|
||||
Note: This method cannot be used when equal signs or redirection
|
||||
symbols are expected in the assigned string.
|
||||
|
||||
++++ Get all assignments of a section
|
||||
|
||||
Syntax: INIFILE inifileName [section]
|
||||
|
||||
SET statements will be generated for all items in the section.
|
||||
|
||||
|
||||
++++ Errorlevels
|
||||
|
||||
Errorlevel > 0 indicates an error (message to STDERR)
|
||||
0 done
|
||||
1 INI file does not exist
|
||||
2 Section name in square brackets was not given
|
||||
255 No INI file specified or help requested (/?)
|
||||
|
||||
The INI file operations are done through the Windows API which handles spaces,
|
||||
upper/lower case etc.. There may be a size limit or a problem with long file
|
||||
names in older Windows versions. Please test.
|
||||
|
||||
Note: In case you have used my old DOS program "INIFILE.COM" make sure that this new
|
||||
version is found through your PATH assignment (or use the command "inifile.exe").
|
||||
|
||||
++++ History
|
||||
|
||||
version 1.6, 27 May 2009: Compiled with PB 4.30
|
||||
version 1.5, 29 Sep 2006: Equal signs allowed in assigned string (though not recommended)
|
||||
version 1.4, 02 Aug 2006: Added function: clear assignment without removing
|
||||
version 1.1, 12 Feb 2006: Added: read all items of section
|
||||
version 1.0, 05 Feb 2006
|
||||
|
||||
++++ Disclaimer, Copyright
|
||||
|
||||
This program is distributed as "freeware", copyright reserved by the
|
||||
author. There are no warranties of any kind, nor any liability by
|
||||
the author. Users accept full responsibility for the use they make
|
||||
of the software and for any damage caused thereby.
|
||||
|
||||
Source available: http://www.horstmuc.de/source/inifile16.zip
|
||||
|
||||
Contact the author:
|
||||
|
||||
mailto:horst.schaeffer@gmx.net
|
||||
http://www.horstmuc.de/
|
||||
|
||||
|
||||
*** 27 May 2009
|
||||
Reference in New Issue
Block a user