Windows 7:由于注销脚本而锁定文件(错误的“共享冲突”)

Windows 7:由于注销脚本而锁定文件(错误的“共享冲突”)

我管理着几台数字白板计算机,它们需要校准笔才能正常工作。不幸的是,校准是基于用户进行的,而不是为整个计算机存储的。此外,这些计算机的硬盘受到保护,以防止更改,因为它们是在一所中学使用的,学生们喜欢摆弄我们的电脑。

这些因素的结合是一个问题,因为笔校准会随着时间的推移而恶化,并且所有重新校准都会因重新启动而消失。所以我想出了这个方案来保留校准更改:

a) 系统复制笔的校准文件当用户注销时,网络共享。这是通过本地组策略调用的 bat 文件完成的:

logoff.bat:
attrib -h "%AppData%\path_to_settings.xml"
xcopy "%AppData%\path_to_settings.xml" "\\10.86.1.3\whiteboard_settings\%ComputerName%\" /H /Y /Q /R > nul
attrib -h "\\10.86.1.3\whiteboard_settings\%ComputerName%\settings.xml"

b)系统复制校准文件当用户登录时,网络共享。这只是一个由公共自动启动调用的bat文件。

logon.bat:
xcopy "\\10.86.1.3\whiteboard_settings\%ComputerName%\settings.xml" "%AppData%\path_to_settings.xml" /H /Y /Q /R > nul
attrib -h "%AppData%\path_to_settings.xml"

之所以调用 attrib -H,是因为如果校准软件隐藏了本地文件,它就不会将校准保存在本地文件中。(但是,奇怪的是,调用 attrib -H 对网络共享没有影响。)

只要我仅登录或注销用户,此设置就可以正常工作。但是,当我重新启动计算机时,网络共享上的文件被锁定,无法复制或更改它:我从 xcopy 收到“错误的‘共享冲突’”。看起来注销 bat 脚本没有完全执行,并且仍然有一些锁定。注销脚本和重新启动是否会出现这种情况?或者这是另一个问题,也许是 attrib 调用的问题?

相关内容