使用批处理脚本将文件从桌面移动到System32

时间:2016-10-24 12:54:09

标签: batch-file system32

这是我在这里问的第一个问题。我一直在寻找答案/帮助,但是找不到任何有用的东西。

负责创建一个批处理脚本,该脚本在我们的用户登录到他们的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时(使用暂停命令),它在CMD中说明它已复制/移动它但在检查时文件不在那里。

请有人帮我将此文件导入System32。

2 个答案:

答案 0 :(得分:0)

您不需要以管理员身份运行每一行,运行批处理文件。

RunAs /User:administrator C:\Folder\mybatchfile.bat

答案 1 :(得分:0)

我最终设法解决了这个问题,

IF EXIST "C:\ScreenSaver\MdxAero_SS.scr" goto :found
IF NOT EXIST "C:\ScreenSaver\MdxAero_SS.scr" goto :notfound

:notfound 
mkdir "C:\Screensaver"
copy "\\VSMG\VOL1\APPS\Screensaver\MdxAero_SS.scr""%UserProfile\Desktop" 
move "%UserProfile%\Desktop\MdxAero_SS.scr" "C:\Screensaver"

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 600 /f
REG add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaverIsSecure /t REG_SZ /d 1 /f
REG add "HKEY_CURRENT_USER\Control Panel\Desktop" /v SCRNSAVE.EXE /t REG_SZ /d C:\ScreenSaver\MdxAero_SS.scr /f

goto :end

:found

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 600 /f
REG add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaverIsSecure /t REG_SZ /d 1 /f
REG add "HKEY_CURRENT_USER\Control Panel\Desktop" /v SCRNSAVE.EXE /t REG_SZ /d C:\ScreenSaver\MdxAero_SS.scr /f

goto :end

:end
exit