【发布时间】:2016-10-24 12:54:09
【问题描述】:
这是我在这里提出的第一个问题。我搜索了高低的答案/帮助,但找不到任何有效的方法。
我们的任务是创建一个批处理脚本,该脚本在我们的用户登录到他们的 PC 时运行,该脚本将屏幕保护程序设置为公司之一。我知道有些人会说使用 Active Directory 来强制执行此操作,但我们不使用它。
脚本本身是这样的:
IF EXIST "C:\Windows\System32\MDXScreenSaver.scr" goto :found
IF NOT EXIST "C:\Windows\System32\MDXScreenSaver.scr" goto :notfound
:notfound
copy "\\VSMG\VOL1\APPS\Screensaver\New\MDXScreenSaver.scr" "%UserProfile%\Desktop"
copy "%UserProfile%\Desktop\MDXScreenSaver.scr" "C:\Windows\System32\"
REG add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveActive /t REG_SZ /d 1 /f
REG add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveTimeOut /t REG_SZ /d 30 /f
REG add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaverIsSecure /t REG_SZ /d 0 /f
REG add "HKEY_CURRENT_USER\Control Panel\Desktop" /v SCRNSAVE.EXE /t REG_SZ /d C:\Windows\System32\MDXScreenSaver.scr /f
:found
exit
在测试时,我将其分解为不同的阶段,因此我知道哪些有效,哪些无效。它将文件从服务器移动到桌面,并应用 REG 键。
当复制/移动到 System32(使用 pause 命令)时,它在 CMD 中声明它已复制/移动它,但检查时文件不存在。
请有人帮我把这个文件导入 System32。
【问题讨论】:
-
您是否在管理权限下运行此文件? system32 可能是您的普通用户的受限区域。如果没有尝试
runas /user:Administrator。 -
你提到文件不存在,这意味着它不在 System32 目录中,但是桌面目录呢?有吗?
-
关于 Compo,这就是我试图让它做的事情,但是 runas 命令是否只适用于我需要处理的一行(System32)或者我需要从开始?关于Dominique,文件成功地从服务器复制到桌面,但是当从桌面移动到系统32时,它没有出现在那里,但是当你暂停代码时它表明它在那里?如果这有意义
-
我已经用
runas /user:administrator完成了测试,这是不喜欢语法并且没有运行那行代码
标签: batch-file system32