【问题标题】:Self-Elevating Batch file (non-Admin user)自提升批处理文件(非管理员用户)
【发布时间】:2015-01-15 21:14:19
【问题描述】:

我们的移动宽带调制解调器在掉落后重新连接时遇到问题。该问题已被提出,但解决方案可能需要一段时间。我们发现的一个快速解决方法是禁用和重新启用设备,但是安全设置使我们的用户无法在网络连接中启用/禁用网络适配器。

我创建了一个批处理文件来处理禁用/启用,但希望它为非管理员用户自行提升。即使我必须将本地管理员帐户硬编码到文件中并将其转换为可执行文件以隐藏代码。到目前为止,这是我所拥有的:

@echo off
echo Please wait while the Sprint modem is reset...
wmic path win32_networkadapter where name="Sierra Wireless Mobile Broadband Network Adapter" call disable
timeout /t 5 /nobreak
wmic path win32_networkadapter where name="Sierra Wireless Mobile Broadband Network Adapter" call enable

如果我选择运行身份:管理员,这将完美运行。我非常感谢任何和所有的帮助。

【问题讨论】:

标签: batch-file


【解决方案1】:

我也遇到过类似的问题,在windows任务调度器的帮助下解决了。

  1. 在调度程序中创建一个新任务,它只运行 bat 文件。
  2. 选择一个管理员用户作为运行任务的帐户。
  3. 输入密码(这是最大的优势 - 您无需将其作为纯文本存储在某些脚本中)
  4. 创建另一个具有以下内容的 bat 文件:schtasks /Run /TN <taskname>
  5. 运行新的 bat 文件。

如果这不起作用,可能是因为用户没有运行任务的权限。在这种情况下,您仍然需要将凭据存储为纯文本,但是

schtasks /Run /U <username> /P <password> /TN <taskname>

会成功的。

【讨论】:

  • 太棒了!一位朋友也建议使用调度程序,但我不明白他的意思。谢谢!
猜你喜欢
  • 1970-01-01
  • 2015-04-17
  • 2013-09-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-23
  • 2017-04-04
相关资源
最近更新 更多