Sure, programs can be made that will remove some applications and their specifics. Many programmers use the "inf file method" ...i.e, if files are listed within the .inf file for a certain Windows component, all you have to do is remove those particular files, and, wallah! component gone.
What isn't fully understood, though, is this...
Which individual files to delete is really all about people. People with computers. People who have different needs on those computers. Way too many people putting their computers to way too many different uses.
Say you decide you no longer want Windows Media Player on your system. You set your program to delete all the files that belong to WMP.
...Which would mean that you also won't be needing the codecs installed for WMP. So you set the program to delete all WMP codecs, too.
But you're also you're a big fan of Yahoo Chat.
...Only now, without all the codecs that went along with WMP, you can't get Yahoo Chat to work properly. You want to talk with your friends in Voice, but you no longer have the ability, because you've deleted the specific codecs that allow this function...along with all the other WMP codecs.
So now you're talking about a program that would have to be set to delete WMP and all codecs, while keeping only the codecs needed for Yahoo Chat.
See what I mean? It's a tough thing to write into a program. There are too many variables. Too many computers users using their computers for too many different things.
Say you don't play games on the Internet.
Then you won't be needing all the DirectX files.
...Unless, you decide you like Windows Media Player after all. Then you're going to need 2 of the DirectX files.
So now you would need someone to incorporate into his program a special script that would single out the 2 DirectX files you need for WMP, while deleting the other 48 DirectX files you don't need because you don't play games on the Internet.
So, you elected to remove DirectX with your file-removal program. You don't play games on the Internet, and you could care less if Windows Media Player needs 2 files from DirectX...because you never use WMP anyway, and you had the program remove WMP, too.
Then you make yourself a nice TV dinner. Grab a bottle of pop from the fridge. Make yourself comfortable in front of your computer. It's movie time!
You pop in a DVD. Up springs NVDVD Player... telling you, "Sorry, you don't seem to have the proper files installed on your system."
You see, NVDVD Player needs 5 DirectX files installed.
So, you decide to re-install DirectX so you can watch your movie;
thereby defeating your purpose, (Remember your purpose? ...To remove all unnecessary files from your system?), because you now have 45 DirectX files sitting on your system you don't need. You set your program to remove Computer Management and Disk Management
(The only reason I would need to access Computer Management would be to utilize Disk Management. The only reason I would need to use Disk Management would be to format a drive. I can do that with XP's installation Disk.
The only utilities I need that are in Computer Management would be Services, Event Viewer and Windows Disk Defragmenter, and I can access them (and do) from my Start Menu.)
You set your program to remove Computer Management and Disk Management. It takes out these files:
compmgmt.msc .....Computer Management Console
diskmgmt.msc .....Disk Management Console
DISKPART.EXE.......Diskpart Application
DMADMIN.EXE ...(Logical Disk Manager Administrative Service). Runs during hard disk configuration only.
dmdlgs.dll .....Disk Management Snap-in Dialogs
dmdskmgr.dll ...Disk Management Snap-in Support Library
dmdskres.dll ...Disk Management Snap-in Resources
dmintf.dll .....Disk Management DCOM Interface Stub
dmocx.dll ......TreeView OCX
DMREMOTE.EXE ..(Logical Disk Manager). A Logical Disk Manager component.
dmserver.dll ...Logical Disk Manager service dll
dmutil.dll .....Logical Disk Manager Utility Library
dmview.ocx .....Disk Management Snap-in
localsec.dll .....(Local Users and Groups MMC Snapin).
mycomput.dll ..Computer Management
ntmsapi.dll ...(Removable Storage Public Interfaces).
ntmsmgr.dll ...(Removable Storage Service).
osuninst.dll ....(Uninstall Interface). Needed to enter Disk Management within Computer Management
smlogcfg.dll ..(Performance Logs and Alerts Snap-in).
Oops! Now you can't get into your Device Manager, because Device Manager is dependent upon
dmocx.dll
-------------------------------------------------
Here's a couple of simple XPLite examples I can show you to help you better understand this. If you were to use XPLite to delete Netmeeting Remote Desktop Sharing , along with the Netmeeting folder and its entire contents in C:\Program Files, the program would also be deleting these files from C:\WINDOWS\system32:
mnmdd.dll .....Application Sharing Display Driver
MNMSRVC.EXE ...(NetMeeting Remote Desktop Sharing). Allows authorized users to remotely access your desktop.
msconf.dll ....Conferencing Utility Dll
msg723.acm .....Microsoft G.723.1 CODEC for MSACM
msh261.drv ....Microsoft H.261 ICM Driver
msh263.drv ....Microsoft H.263 ICM Driver
nmevtmsg.dll ..NetMeeting Event Logging DLL
nmmkcert.dll ..NetMeeting Event Logging DLL
But here's the rub... msg723.acmis one of the files needed by Plus! MP3 Audio Converter LE so it can convert .mp3 files to .wma files.
-------------------------------------------------
If you were to use XPLite to delete Universal Plug and Play Device Host, along with the icsxml folder and its entire contents in C:\WINDOWS\system32, the program would also be deleting these files from C:\WINDOWS\system32:
ssdpapi.dll...SSDP Client API DLL
ssdpsrv.dll ....SSDP Service DLL
udhisapi.dll ...UPnP Device Host ISAPI Extension
upnp.dll...Universal Plug and Play API
UPNPCONT.EXE ...(UPnP Device Host Container). A Universal Plug and Play component.
upnphost.dll ...UPnP Device Host ISAPI Extension
upnpui.dll .....UPNP Tray Monitor and Folder
And here's the rub... ssdpapi.dll and
upnp.dll are both needed to watch Yahoo movie trailers
-------------------------------------------------
If you were to use XPLite to delete WebClient, the program would delete these two files from C:\WINDOWS\system32:
davclnt.dll ...Web DAV Client DLL
webclnt.dll ....Web DAV Service DLL
Oops!
davclnt.dll is also one of the files needed to watch Yahoo movie trailers.
But if you leave those Services intact, you'll be leaving on your system a whole bunch of files belonging to those Services that you really don't need...thereby defeating your purpose of removing all unnecessary files from Windows XP.
See what I mean? There are just too many variables involved. It's just impossible to have a program remove whole components without removing with them some files that have other dependencies.
I'm sorry, I know how staunch the supporters of nLite are...but even nLite is going to do this with components it removes.
-------------------------------------------------
"Aha!" You Say. "Why not use nLite's, feature to remove whatever files you tell it to? nLite has an 'additional files to remove' box."
Hmm. Let me see. With some 1800 individual system32 files, alone...a person would have some hell-to-pay decisions to make.
You couldn't even call that a program, when a person has to make that many decisions for himself.
A person may as well pick out the files he or she wants to remove after an install and make a batch file to remove them.
For that person who can make those decisions, I have just such a batch file for you. I don't give out my batch files for Individual system32 Files anymore. I got tired of people thinking what works for me will automatically work for them. It just doesn't work that way.
Here is just one very simple example why. I remove with my system32 batch files the winfax.dll (Microsoft Fax API Support DLL) because I don't have a fax machine. You use my system32 batch file, thinking what works for me will automatically work for you. Your fax machine conks out. You blame me.
Which Individual system32 Files you choose to remove from your XP installation will be entirely up to you. I've given you as much information as I could about these files to help you with your choices.
If you want to a make batch files of your own to aid you in removing Individual Files from the system32 folder, I'll start you out with the command part of the my batch files script, and then you can add any Individual system32 Files you want.
I have incorporated a failsafe feature I into my system32 batch files... The files will be moved and saved (not deleted permanately...later that will be up to you.) to a backup folder on C:\ The backup folder is simply named, backup.
Within the backup folder you will notice what I call
"smart placement" of subfolders. Their order of appearance will look identical to how they look in XP. First you will see a WINDOWS folder. Inside the WINDOWS folder you will see a system32 folder.
I created this smart placement of folders so you would always know exactly where their files came from should you decide to replace any to their original locations. You see, these batch files can also be used for other folder files. Say you make a batch file for the .INF Files that are in the inf folder. In the backup folder you will first see WINDOWS, and then the inf folder...just like in XP.
Be sure to Temporarily delete the Backup Folder filled with files before using any registry cleaners ...the registry cleaners will more than likely correct the files paths to the backup folder, rather than remove the paths.
Copy and paste between the lines to Notepad. Save as "any name you choose.bat" Then insert your file choices where I have mine.
Code:
IF NOT EXIST "c:\backup\WINDOWS\system32" md c:\backup\WINDOWS\system32
MOVE c:\WINDOWS\system32\6to4svc.dll c:\backup\WINDOWS\system32\
MOVE c:\WINDOWS\system32\aaaamon.dll c:\backup\WINDOWS\system32\
MOVE c:\WINDOWS\system32\acledit.dll c:\backup\WINDOWS\system32\
MOVE c:\WINDOWS\system32\admparse.dll c:\backup\WINDOWS\system32\