Entries.ini syntax


Here is the quick explanation of the supported entries.ini values which you can use to make your own addons for nLite. I will just list them all with brief explanations so that those who have previous experience can use the new functions. Going to update this page later on with more detailed info.


nLite v1.4.9 and newer:
nLite v1.4 and newer:
  • updatecabs (update a cab file)
  • strings (same as [filenames], for %var%)
  • adddirective (add a new directive in the specified file e.g. [MyProgram])
  • txtsetup_files_pro (lines to write inside txtsetup.sif for other than Home Windows versions)
  • dosnet_files_pro (lines to write inside txtsetup.sif for other than Home Windows versions)
  • txtsetup_files_home (lines to write inside txtsetup.sif only for Home Windows versions)
  • dosnet_files_home (lines to write inside txtsetup.sif only for Home Windows versions)
  • registry_addreg (add registry entries, INF syntax)
  • registry_delreg (remove registry entries, INF syntax)
  • obsolete_files (remove files)
  • guirunonce (lines to write inside winnt.sif - guirunonce)
  • dosnet_files (lines to write inside dosnet.inf)
  • txtsetup_files (lines to write inside txtsetup.sif)
  • txtsetup_fileflags (lines to write inside txtsetup.sif - [FileFlags])
  • txtsetup_dirs (lines to write inside txtsetup.sif - [WinntDirectories])
  • txtsetup_remove (lines to remove from txtsetup.sif)
  • dosnet_remove (lines to remove from dosnet.inf)
  • sysoc (lines to add to sysoc.inf - [Components])
  • editfile (lines to add into the specified file)
  • extrafileedits (lines to edit or add into the specified file)

Notes:
  • use x64_i386 folder in the addon to store files for the 64-bit Windows that go to the i386 folder if you want them separate within the addon. Otherwise just put them to the root of the addon and they will be automatically sorted to the proper source destination. No need to add any entries for these 2 methods unless you add new files then txtsetup_files will be enough.



[General]

Supported variables:

builddate
description
language
title
version
website


Supported switches:

forcelang
flags=IgnoreFileVersions


Example:

 [General]
 builddate=12/17/2006
 description=RyanVM's Post-SP2 Update Pack for Windows XP
 language=English
 title=RyanVM Update Pack
 version=2.1.5a
 website=http://www.ryanvm.net/msfn/
 forcelang=English
First variables are more or less selfexplanatory and are used only for displaying purposes. Variables, first flags, it is the new line which for now has only the IgnoreFileVersions variable which is needed for packs which overwrites some existing file and has lower version. So by using IgnoreFileVersions you are telling nLite to not skip virtually older files.
forcelang will instruct nLite to allow only specific Windows language version for this addon to be used on.



[AddDirective]

Example:
 [AddDirective]
 wmp.inf,MyEntries
This will add [MyEntries] inside the wmp.in_ file. Then you can use EditFile to add entries to it.



[registry_addreg]

Example:
 [registry_addreg]
 HKLM,"SOFTWARE\Microsoft\Windows","Test",0,"Oh"


[registry_delreg]

Example:
 [registry_delreg]
 HKLM,"SOFTWARE\Microsoft\Windows","Test"
This will remove the added value Test which was added by using the registry_addreg directive.



[UpdateCabs]

Example:
 [UpdateCabs]
 i386\file1.cab, file1files

 [file1files]
 cabfile1.dll
 cabfile2.exe
This will add specified files to the specified existing CAB file and thus updating it. Useful for MCE cabs.



[NeededComponents]

Example:
 [NeededComponents]
 187,331,307
This would keep or warn if missing Internet Explorer, Messenger and System Restore. Full list of component index numbers is in the translation file Lang\Translation.txt under [Components]. Instead of S[index] just write index.



[KeepFiles]

Example:
 [KeepFiles]
 srestore.dll,migwiz.exe
This would keep a certain files from removal.