命令中调用了错误的环境设置

命令中调用了错误的环境设置

运行非 Powershell 批处理代码以提升 UAC 权限时,使用“For /D”、“dir”和“if exist”命令在错误消息中获取错误和额外的路径名这里。这已在我的问题在不存在的目录上有大量错误垃圾邮件。

这里是此类的屏幕截图。问题是错误地插入了“本地”和重复的“应用程序数据”。这些错误消息不会在以下情况下出现:不是使用 UAC 提升代码。

Wscript 中的某些内容是否可能在 WshEnvironment 对象上调用了错误的 HOMEPATH 环境设置?

这可能与 XP 升级到 Win 7 HP(几年前)有关,出于某种原因,“Documents and Settings”“Local Settings”和“Application Data”的影子不会消失。只需输入如下命令

set LOCALAPPDATA=C:\Users\%username%\AppData\Local
set APPDATA=C:\Users\%username%\AppData\Roaming

什么都没改变。使用管理员权限时,%LocalAppData% 似乎在批处理中不正确。

或者我们可以通过以下方式注册:

reg.exe add “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders” /v “Local Appdata” /t REG_SZ /d/f

读了一点这篇文章,我发现我的连接点破产了。

答案1

您不能使用命令提示符。打开控制面板并单击系统,单击左侧的高级链接,然后单击高级选项卡上的环境变量按钮,在底部窗口中更改系统变量或在那里添加新变量,然后重新启动以确保它们生效。上面的窗口用于用户环境,这意味着那里的更改仅对登录用户有效,因此我建议您在底部(系统变量)窗口中进行更改以进行批处理编码。如果我误解了您的帖子,请在这里告诉我。您的问题措辞有点令人困惑,但我想我做对了。您也可以右键单击计算机(或 XP 中的我的计算机图标),然后单击属性以获取相同的高级设置。只需检查选项卡,直到在选项卡底部找到“环境变量”按钮。实际上,虽然您可以使用 setx,但如果您不是 cmd 提示符的重度用户,使用 GUI 更容易。还可以尝试使用 kixstart 进行批处理编码以设置变量等。这是一个强大的批处理代码选项。

相关内容