有人能帮我运行vbs本身,但管理员的权利吗?我需要通过VBScript用Windows8重命名计算机,但是只有通过管理员命令行运行我的脚本(作为管理员→runScript.vbs运行的CMD→)才有可能。如果我用经典的CMD启动脚本,计算机就不会被重命名。
我的想法是用用户权限启动脚本,没有参数,如果没有参数,脚本将使用管理权限重新运行,并以参数作为标识符"I'm admin“重新运行。
有人知道我是怎么做到的吗?
编辑:
我试过这个:
If WScript.Arguments.Count = 0 Then
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "wscript.exe", "c:\Users\admin\Documents\selfConfigure.vbs -1", "", runas", 1
End If发布于 2013-07-04 09:55:47
如果在计算机上启用了UAC,类似的操作应该可以:
If Not WScript.Arguments.Named.Exists("elevate") Then
CreateObject("Shell.Application").ShellExecute WScript.FullName _
, """" & WScript.ScriptFullName & """ /elevate", "", "runas", 1
WScript.Quit
End If
'actual code发布于 2014-03-14 18:57:50
将以下内容添加到文件的开头:
Set WshShell = WScript.CreateObject("WScript.Shell")
If WScript.Arguments.Length = 0 Then
Set ObjShell = CreateObject("Shell.Application")
ObjShell.ShellExecute "wscript.exe" _
, """" & WScript.ScriptFullName & """ RunAsAdministrator", , "runas", 1
WScript.Quit
End if发布于 2014-05-13 07:15:08
标高选项不错的文章- http://www.novell.com/support/kb/doc.php?id=7010269
将应用程序配置为始终请求提升权限:
程序可以配置为始终通过HKCU__下的注册表设置请求用户级别的提升。这些注册表设置在运行中是有效的,因此可以在启动特定应用程序之前立即设置它们,如果需要的话,甚至可以在应用程序启动时立即删除。只需在"String Value"下为可执行文件的完整路径创建一个"HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers",该路径的值为"RUN AS ADMIN"__。下面是CMD的一个例子。
Windows Registry Editor Version 5.00
[HKEY_Current_User\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"c:\\windows\\system32\\cmd.exe"="RUNASADMIN"https://stackoverflow.com/questions/17466681
复制相似问题