Запуск команды cmd из выпуска vb.net

Я пытаюсь запустить следующий код в событии клика. Однако, поскольку он выполняет команду в оболочке cmd, я не знаю, почему она не запустится. Что я могу сделать, это открыть cmd.exe в качестве администратора, закомментировав аргументы. А также вставьте эти аргументы в файл.bat, затем запустите из process.start.

Однако почему я не могу запустить оболочку с аргументами? Я бы предпочел этот метод, а не помещать аргументы в файл.bat.

    Dim process As New System.Diagnostics.Process()
        Dim startInfo As New System.Diagnostics.ProcessStartInfo()
        ' startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden

        startInfo.FileName = "cmd.exe"
        If System.Environment.OSVersion.Version.Major >= 6 Then ' Windows Vista or higher
            startInfo.Verb = "runas"
        Else
            ' No need to prompt to run as admin
        End If
        startInfo.Arguments = "/C bcdedit /set {current} safeboot network"
        process.StartInfo = startInfo
        process.Start()

1 ответ

Догадаться. Мне пришлось скопировать bcdedit.exe в мой проект. Я думал, что вызов cmd.exe будет идти к месту, где находится bcdedit.exe.

Другие вопросы по тегам