Board logo

标题: [文本处理] 批处理xcopy提示访问遭到拒绝 [打印本页]

作者: mtlee    时间: 2021-4-26 19:57     标题: 批处理xcopy提示访问遭到拒绝

上代码:Xcopy  "C:\Program Files (x86)\Mtlee\Config\Fonts\*.*"   "C:\Windows\Fonts"  /y/c/s/e/r

提示访问遭到拒绝 ,请问各位老师我需要如何处理呢,bat有用管理员权限运行,但是没用。
作者: 1152    时间: 2021-4-26 20:59

C盘是需要权限的
作者: mtlee    时间: 2021-4-26 21:36

回复 2# 1152


   这权限可以通过批处理获取吗
作者: 路过    时间: 2021-4-26 22:18

WIN7以后向C:\    C:\Windows\     C:\Windows\system32\复制文件需要管理员权限。

可以用以下命令让批处理以管理员权限运行(需要用户同意)
  1. %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
复制代码

作者: 1152    时间: 2021-4-26 22:37

回复 3# mtlee


    可以的
作者: Batcher    时间: 2021-4-27 00:13

回复 1# mtlee


test.bat
  1. @echo off
  2. %1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("""%~f0""","::",,"runas",1)(close)&exit /b
  3. xcopy /e /y "C:\Program Files (x86)\Mtlee\Config\Fonts\*.*" "C:\Windows\Fonts"
复制代码

作者: mtlee    时间: 2021-4-27 00:58

回复 6# Batcher


    老师,我用您的语句执行了还是提示访问遭到拒绝
作者: mtlee    时间: 2021-4-27 01:01

回复 6# Batcher


    不过我发现,原本有6个字体文件,但是有5个没提示拒绝,只有1个字体文件提示拒绝
作者: 1152    时间: 2021-4-27 13:24

回复 8# mtlee


    因为有一个程序正在使用
作者: xczxczxcz    时间: 2021-4-27 13:44

提防另外一情况:村长拥有管理员权限,可以发号司令。但他没权到村民家中那村民的东西。
作者: xczxczxcz    时间: 2021-4-27 13:48

你现在已是村长,有了管理员权限,但要拿别人的东西,也要经过别人的授权。 明别了就简单。
作者: mtlee    时间: 2021-4-27 14:02

回复 11# xczxczxcz


   我已经是有管理权限的村长了, 且跟6户村民沟通过了,5个村民已经允许我拿他家东西了,但是有1户村民死后不给我拿(有网友说是可能进程运行中),请问我需要如何才能强硬取走呢
作者: mtlee    时间: 2021-4-27 14:05

回复 9# 1152


    有办法可以强制复制吗,因为我也不确定是被哪里进程占用了
作者: xczxczxcz    时间: 2021-4-27 14:58

回复 12# mtlee
本不想在论坛再写任何批处理,希望下面的最后一次批处理对你有用。若是线程占用则把任务管理器中能结束的一律结束。
  1. @echo off  & cd /d "%~dp0"
  2. %1 start "" mshta Vbscript:CreateObject("Shell.Application").ShellExecute("""%~0""","::",,"Runas",1)(Window.Close)&Exit
  3. set "source=C:\Program Files (x86)\Mtlee\Config\Fonts"
  4. set "dest=C:\Windows\Fonts"
  5. takeown /f "%source%" /r /d y
  6. icacls "%source%" /grant administrators:F /t
  7. xcopy /y/c/s/e/r "%source%\*" "%dest%\"
  8. set/p="全部完成 按任意键退出"<nul&pause>nul
复制代码

作者: mtlee    时间: 2021-4-27 22:41

回复 14# xczxczxcz


    大神,您提供的写法好像有效果
    窗口先是看到成功:此文件(或文件夹)xxx现在由用户“xxx"所有。
    xxxxxxxx
    已成功处理7个文件,处理0个文件时失败
   
   但是下面又紧跟着
   这几个文件字符访问遭到拒绝的提示

  所以现在也不清楚纠结是成功与否
作者: xczxczxcz    时间: 2021-4-28 10:19

回复 15# mtlee

把第8行改成下面三行试试:
  1. icacls "%source%" /reset /t
  2. icacls "%source%" /grant administrators:F /t /inheritance:e
  3. attrib -s -r "%source" /s/d
复制代码
你现在已超级使用权限,若还不行,可以把文件右键安全属性的各个内容截图上传。 蓝奏云是个好地方。




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