0

我正在尝试将 manage-bde.exe 作为 VB.net 中的新进程启动,但是当它尝试启动 proc 时,Bitlocker 崩溃。谁能告诉我我在这里做错了什么?这段代码是从 C# 转换而来的,它整天都在工作......

代码:

Private Sub btnLock_Click(sender As Object, e As EventArgs) Handles btnLock.Click
    Dim drvSelected As String = cmbDriveSelect.SelectedValue.ToString()
    Dim sysDirWithBDE As String = Environment.SystemDirectory + "\manage-bde.exe"
    Dim lockStatus As String = String.Empty

    ' This is the code for the base process
    Dim myProcess As New Process()

    ' Start a new instance of this program
    Dim myProcessStartInfo As New ProcessStartInfo(sysDirWithBDE, " -lock " + drvSelected.Remove(2))
    'Set Use Shell to false so as to redirect process run info to application
    myProcessStartInfo.UseShellExecute = False
    myProcessStartInfo.RedirectStandardOutput = True
    myProcess.StartInfo = myProcessStartInfo
    Try
        myProcess.Start()
        lblDriveLockMsg.Show()
    Catch err As Exception
        lblDriveLockMsg.Text = err.Message
    End Try
    'Read the standard output of the process.
    lockStatus = myProcess.StandardOutput.ReadToEnd()
    If lockStatus.Contains("code 0x80070057") Then
        lblDriveLockMsg.Text = "Drive selected is not Bit Locker encrypted"
    ElseIf lockStatus.Contains("code 0x80070005") Then
        lblDriveLockMsg.Text = "Drive selected is in use by an application on your machine, force dismounting might result in data loss, please check and close any applications using the drive"
    Else
        lblDriveLockMsg.Text = lockStatus
    End If

    myProcess.WaitForExit()
    myProcess.Close()
End Sub
4

0 回答 0