@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
http://www.d--b.webp...everse04_en.htm
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.
1)
Value name: PendingFileRenameOperations
Value type: array of null-terminated strings (REG_MULTI_SZ)
Value data:
\??\c:\winnt\system32\sfcfiles0.dll
!\??\c:\winnt\system32\sfcfiles.dll
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.
2)
Value name: AllowProtectedRenames
Value typ: DWORD (REG_DWORD)
Value data:
1
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..
This post has been edited by Yurek3: 18 September 2005 - 07:03 AM