Board logo

标题: [文件操作] 批处理如何强行替换system32目录下的dll文件? [打印本页]

作者: zb848    时间: 2015-9-8 09:47     标题: 批处理如何强行替换system32目录下的dll文件?

我有个文件1234.dll要替换system32目录下的同名文件,但替换时总是提示该dll文件被使用,请问有什么办法能强行替换?

------------------------------------------------
在网上找到的批处理,一般文件替换没问题,被 使用的dll文件好像不行
  1. @echo off
  2. for /f "delims=" %%a in ('dir /a /b *.dll') do (
  3. :estReplaceSysFile
  4. echo * %WinDir%\System32\%%a
  5. takeown /f "%WinDir%\System32\%%a" >nul 2>nul
  6. echo y|cacls "%WinDir%\System32\%%a" /g everyone:f >nul 2>nul
  7. if not exist "%WinDir%\System32\%%a.bak" (
  8. ren "%WinDir%\System32\%%a" "%%a.bak" >nul 2>nul
  9. )
  10. copy %%a %WinDir%\System32 /Y /V
  11. )
  12. pause>nul&&goto:eof
复制代码

作者: pcl_test    时间: 2015-9-8 11:36

没有好办法,先找出占用该dll的程序并结束掉,系统级的试试安全模式下或PE环境下替换
作者: flyinnet9    时间: 2015-9-8 14:41

cmd下有个命令叫replace,可以试试
或者结合 regsvr32命令




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2