Any bugs, questions, remarks and/or issues related to my work described below can be discussed here.
The following is not for the average user! You have to know a bit about the commandline in Windows as well as how batch-files work. It does not work out of the box and requires modifications to fit your needs, if you do not comprehend this, then be satisfied with the removal vLite can do for you (just stay clear of removing Game Explorer, IE8, Windows Firewall and Internet Connection Sharing).
I went a bit further on what I had achieved previously and I managed to remove most of Microsoft.NET up to the point that vLite still works (so no complete removal of .NET). After this the install.wim is 822MB, the installation is about 2.4GB without compression and pagefile-/hibernate-file, even a bit less (2.39GB) after you have performed the final step and for those interested it is 1.54GB with compression (though I would not choose to do this).
packages_xls.txt (rename to packages.xls)
Contains information about all Windows packages, vLite component, the relation between them, removal issues and specified removal (dism or vLite)
removal_bat.txt (rename to removal.bat)
Contains removal of packages, cleanup and language pack integration (not fully automated). Works by specifying a parameter (eg "removal.bat packages")
Please make sure you edit it to fit your needs (everything up to the choice between using imagex or dism for mounting, use imagex for proper functionality)
The removal.bat can perform the following actions :
parameter - action (see contents for possibilities)
<none> - initialize environment variables (a new prompt called "WIM-prompt" will be started)
updates - integrate updates with dism (not functional yet, might only work when executed under the same Windows 7 build)
packages - remove packages with dism (see packages.xls for details)
cleanup - remove files and folders
drivers - driver integration (recurses the specified folder)
pre - actions updates + packages
post - actions cleanup + drivers
full - actions packages + cleanup + drivers (not recommended)
langpack - integrate language pack in Windows 7
langpack2 - integrate language pack in Setup
final - register file for safe removal and extra removal of Microsoft.NET files (post-installation)
init2 - performs intialisation without setting parameters desribed below (used from removal_custom.bat)
The removal.bat contains the following parameters:
cb - empty (determine from %DVD%\setup.exe; can also be x86, amd64 for respectively Windows 7 32-bit, 64-bit)
build - 7600 (build number of your Windows version, default RTM-build)
svn - 16385 ("sub-version" of Windows build number)
pre - 31bf3856ad364e35 (do not change; string part used in the name of Windows Packages)
edition - HomePremium (Windows edition you will be modifying (case sensitive!): Starter, HomeBasic, HomePremium, Professional or Ultimate)
II - 2 (obsolete! - the image if that you will be modifying: 1 HomeBasic/Starter?, 2 Home Premium, 3 Professional, 4 Ultimate)
remove.NET - V (removal of Microsoft.NET: C for complete removal, V to keep vLite working or K to keep)
updateloc - C:\vLite\Updates (folder of updates to be integrated)
update.ext - * (extension of the updates to be integrated: msu, cab or * for all/both)
driverloc - C:\vLite\Drivers (folder of drivers to be integrated)
lang - nl-NL (your language code; see this page)
langid - 1043 (your language setting: see this page)
intlcfg - C:\vLite\intlcfg.exe (location of intlcfg.exe from WAIK)
langloc - C:\vLite\Langpack (location of your Language Pack)
DVD - C:\Windows 7 DVD (DVD & sources-folder containing install.wim and dism.exe)
mount - C:\Wim (folder for mount Dism/Imagex or Root Imagex only)
imagex - "C:\vLite\imagex.exe" (location of imagex.exe from WAIK)
- in case of Windows 7 x64, make sure you are running a x64 version of Windows as well (only tested for x64);
- (have vLite) install the wim-filter, otherwise mounting the image will fail;
- Windows 7 DVD-contents (or ISO) copied to a local drive;
- dism.exe present in the sources-folder (for those of you that remove all files from the sources-folder);
- remove ei.cfg from sources-folder to be able to install all editions (not required for RTM/final);
- removal of Game Explorer component (by vLite) requires removal of Snipping Tool package (by dism);
- after the cleanup phase with nullify of winsxs-Backup, do not select any Component removal in vLite this will no longer work;
- final step is essential to keep vLite functioning (folder needs to be removed from Windows\assembly).
The following files need to be placed in the same folder as removal.bat (it alters the path, so it does not need to be root):
install_wim_tweak (direct link: win6x_registry_tweak_bin_v1.1.rar)
imagex.exe and intlcfg.exe from the Windows Vista SP1 AIK (take the proper version of these files amd64 for x64 or x86; Windows 7 AIK gives issues)
1. Modify the removal.bat to fit your needs (just in case you forgot)
2. Integrate Language pack (removal.bat langpack)
3. Integrate Updates (removal.bat updates)
4. Packages removal (removal.bat packages; 3/4: removal.bat pre)
5. vLite (Component removal only)
6. Cleanup of files and folders (removal.bat cleanup)
7. Integrate Drivers (removal.bat drivers; 6/7: (removal.bat post)
8. vLite (Tweaks only: reduce image size after cleanup)
9. Test on a secondary partition or to a virtual environment (such as VMware)
10. After installation final steps can be performed (removal.bat final)
edit: resolved a few issues with the removal.bat file.
edit 10-08-2009: corrected final & update (mount first; fix DirectX Web Setup -keep fusion.dll and mscorie.dll) action in removal.bat.
edit 11-08-2009: restored edition parameter (II - image index is obsolete now), take into account lang "en-US", renamed langcode to langid in removal.bat.
edit 15-08-2009: removed redundant removals (avm/Fritz, Printing, fonts) in removal.bat, added Ultimate-N details in packages.xls
edit 23-08-2009: cb parameter changed, restructured to allow usage with custom actions in removal_custom.bat (such as for SausageHack's guide; my example)
edit 30-08-2009: corrected use of Windows 7 AIK to Windows Vista SP1 AIK
edit 31-08-2009: corrected some issue for cleanup action (see this post and the reply to it)
edit 06-09-2009: corrected IEtail parameter for IE Optional package removal
edit 19-09-2009: corrected dism functionality, changed used location of language package (as seen in this post by franner)
edit 19-10-2009: corrected integration of updates (thanks again franner)
edit 23-10-2009: corrected check on codebase parameter cb.
edit 24-10-2009: repositioned codebase determination to correct functionality of package removals.
This post has been edited by Jeronimo: 24 October 2009 - 03:45 AM