Jump to content

SFC_OS.DLL hack for XP SP2 Final


Recommended Posts

Google directed me to this topic for my problem, and I read ALL posts in this topic, but there's one thing missing now... I'm looking for a SFC_OS.DL_ which enables deleting the empty folders in the Program Files directory. I'm using a Dutch Windows XP SP2 build 2180.

Has anyone got a copy of the hacked version of SFC_OS.DL_ lying around? All links in previous posts are either to disable WFP (I don't want to disable it) or dead. I've already looked at RyanVM's files but that one is also to disable WFP.

I don't dare hex-editing the file myself just yet... :(

All help will be greatly appreciated!


Link to comment
Share on other sites

  • 1 month later...

@kelsenellenelvian this file does not work sorry in before T -39 receive blue screen

with information , it with this file is not the file of system Windows Xp

Mistake critical

see there


How to fully disable System File Checker (SFC, WFP).

The method with patching sfc_os.dll (or sfc.dll) file dont disable fully WFP. Protected files can be replaced only manually. If any installator will use function MoveFileEx (with MOVEFILE_DELAY_UNTIL_REBOOT flag) to replace in-use protected files, then the files will be not replaced. The reason for this is, that session manager (smss.exe) while loading system, before replace any files, check list of protected files. If given file is in this list, then replace will fail. Until you add to registry AllowProtectedRenames value, the protected files will be not replaced.

Second often used function is SetupInstallFile (with SP_COPY_FORCE_IN_USE flag). This function before add a file to replace-list, check with SfcIsFileProtected (from sfc_os.dll) whether the file is protected or not. If file sfc_os.dll is patched, then SfcIsFileProtected will return always false. So SetupInstallFile will no add AllowProtectedRenames value to the registry.

I have develop my own method to full disabling WFP. This method is simple, more flexible and dont need to patch any files. It based on empty list of protected files. So WFP is on, but list of protected files is empty and all files are not protected. List of protected files is in file sfcfiles.dll. I have wrote my own sfcfiles.dll file with empty list. One thing that is to do, is replace this one file.

How replace sfcfiles.dll file ?

This file is a in-use protected file. To replace it, you need copy my sfcfiles0.dll into system directory and add two values to this key:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager

After reboot, WFP will be fully disabled.

To add this two values to registry you must have admin rights. And dont forget to make backup of old sfcfiles.dll.


Value name: PendingFileRenameOperations

Value type: array of null-terminated strings (REG_MULTI_SZ)

Value data:



This value is used to replace files at reboot time.

In first line is a path to the file that should be moved. In second line is new path for this file.

Note: Creating a value of REG_MULTI_SZ type in registry editor is available from XP version. To replace this file in Windows 2000 use automatic installation descripted below.


Value name: AllowProtectedRenames

Value typ: DWORD (REG_DWORD)

Value data:


This value is needed to replace protected file.

And that is all.

Automatic installation mode for Windows 2000 user (work also in XP).

I have added two functions to sfcfiles0.dll file: Install and Uninstall. These functions will add two values to registry. Before calling these functions, file sfcfiles0.dll should be in system directory.

Function: Install

Calling: Select a command "Execute..." from start menu (or in command prompt) and enter:

rundll32 sfcfiles0 Install

First, this function will make backup of old sfcfiles.dll file to system32\dllcache directory, and add two registry values. If file sfcfiles.dll exist already in dllcache, then it will be not overwrite. After reboot file sfcfiles0.dll will be renamed to sfcfiles.dll.

Function: Uninstall

Calling: Select a command "Execute..." from start menu (or in command prompt) and enter:

rundll32 sfcfiles Uninstall

This function copy in dllcache the file sfcfiles.dll to sfcfiles.tmp. This temporary file will be moved after reboot to system32 directory. File sfcfiles.dll (with empty list) from system directory will be copyed to sfcfiles0.dll..

Edited by Yurek3
Link to comment
Share on other sites

Call me :w00t: Crazy...'cause i am...However, one of your very kind msdn pros gave information some time ago here about this and, the fix is much simpler than all this other stuff you are trying to do> please inspect the

"boot.ini" file below:

[boot loader]



[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /NOEXECUTE=ALWAYSOFF /fastdetect

Additionally, you can elevate install rights using gpedit.msc....

THis is all freeware from Microsoft...

Einstein once said that...'everything should be made as simple as possible--not simpler...'

Works for me... :D:thumbup

Edited by humble3d
Link to comment
Share on other sites

I have just finished reading this thread beginning to end and I am still unsure if it is possible to disable the protection of these empty folders under %PF%.

Windows XP SP2 English

I want to be able to delete these folders, but I do not want to disable WFP

-C:\Program Files\Microsoft Frontpage\

-C:\Program Files\Movie Maker\

-C:\Program Files\MSN Gaming Zone\

-C:\Program Files\MSN Gaming Zone\Windows\

-C:\Program Files\NetMeeting\

-C:\Program Files\Windows Media Player\

-C:\Program Files\Windows NT\

-C:\Program Files\Windows NT\Accessories\

-C:\Program Files\Windows NT\Pinball\

-C:\Program Files\Xerox\

Do I need both files fixed or just SFC_OS.DLL? What do I need to change in either?

Do I still need to edit the registry?

Can I just use WFPAdmin and compress the file when I am done? Again, do I need both files after this?

Edited by OrcoXP
Link to comment
Share on other sites

I think you mean ...


But I know you are just showing off that ryanvm.net !

(GreenMachine.net is long gone, alas)

EDIT:: Silly me: forgot to add Thanks, RyanVM!

Does anyone still have this file? The link is dead.

Can someone also confirm that this file removes protection over the folders in Program Files and not the files in the Windows DIR?

Link to comment
Share on other sites

  • 2 weeks later...

This explains how to do it. Here is a good free hex editor;

If you use XVI32 be sure to check Unicode Latin and Joker Hex and then just do a text search Edited by snooz
Link to comment
Share on other sites

The site has been disabled but I have been there before and it did not have any info about removing protection over these folders without disabling WFP completely.

Anyone who has the SFCFILES.DLL that is already already fixed for SP2, can you post a link?
Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    • No registered users viewing this page.

  • Create New...