如何以管理员身份运行CMD.exe

时间:2017-07-03 11:57:04

标签: vb.net

使用2个文本框的内容成功运行DOS命令。我试图找到解决方案的问题是............

如何使用提升的权限(以管理员身份)运行

任何人都可以帮助我吗?

Private Sub Button1_Click(sender As Object,e As EventArgs)处理Button1.Click         Shell(“cmd.exe / c”+ TextBox1.Text + TextBox2.Text)     结束子

1 个答案:

答案 0 :(得分:4)

使用Shell()以管理员身份运行应用程序是不可能的(除非目标文件设置为始终以管理员访问权限运行)。

您可以使用ProcessStartInfoProcess.Start()来运行具有管理员访问权限的应用程序。但是,如果用户按下No。

,则Process.Start()会引发异常
  Dim psi As New ProcessStartInfo() ' Initialize ProcessStartInfo (psi)
  psi.Verb = "runas" ' runas = Run As Administrator
  psi.FileName = "cmd.exe" ' File or exe to run (this cannot take arguments, use ProcessStartInfo.Arguments instead
  psi.Arguments = "/c " + TextBox1.Text + TextBox2.Text ' Arguments for the process that you're going to run
  Try
      Process.Start(psi) ' Run the process (User is required to press Yes to run the program with Administrator access)
  Catch
      MsgBox("User cancelled the operation", 16, "") ' User pressed No
  End Try