禁用CD驱动器的使用(VB.NET)
我有一个任务,不知道如何处理它 基本上,我想禁用电脑上的CD驱动器,这样我们的用户就不能使用它们了 不管怎样,这就是我想要开始的方式——最终我希望在系统托盘中有一个图标,只要您知道密码,就可以锁定和解锁CD驱动器 不过我需要一个开始的地方——有人知道如何在VB.net中禁用CD驱动器吗 任何帮助都将不胜感激禁用CD驱动器的使用(VB.NET),vb.net,cd,Vb.net,Cd,我有一个任务,不知道如何处理它 基本上,我想禁用电脑上的CD驱动器,这样我们的用户就不能使用它们了 不管怎样,这就是我想要开始的方式——最终我希望在系统托盘中有一个图标,只要您知道密码,就可以锁定和解锁CD驱动器 不过我需要一个开始的地方——有人知道如何在VB.net中禁用CD驱动器吗 任何帮助都将不胜感激 安德鲁我找到了这样做的方法 基本上,我需要循环查看设备管理器中的所有项目,如下所示: search = New System.Management.ManagementObjectSearc
安德鲁我找到了这样做的方法 基本上,我需要循环查看设备管理器中的所有项目,如下所示:
search = New System.Management.ManagementObjectSearcher("SELECT * From Win32_PnPEntity")
For Each info In search.Get()
' Go through each device detected.
Next
然后我使用DeviceID和ClassGuid部分
如果Guid与{4D36E965-E325-11CE-BFC1-08002BE10318}匹配,这是CD/DVD播放机的Guid,我告诉它根据用户的意愿禁用/启用设备
为了启用或禁用它们,我发现这个方便的程序已经准备就绪
然后我简单地编辑了Form1.vb:
Imports System.Management
公开课表格1
Private Sub btnEnable_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEnable.Click
getCdDrives("Enable")
End Sub
Private Sub btnDisable_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDisable.Click
getCdDrives("Diable")
End Sub
Public Function getCdDrives(ByVal EnableOrDisable As String) As Boolean
If InputBox("password") = "password" Then
Try
Dim info As System.Management.ManagementObject
Dim search As System.Management.ManagementObjectSearcher
Dim deviceGuid As String
Dim deviceType As String
Dim cameraIsSeenByWindows As Boolean = False
Dim showDebugPrompts As Boolean = False
Dim actualGuid As Guid
search = New System.Management.ManagementObjectSearcher("SELECT * From Win32_PnPEntity")
For Each info In search.Get()
' Go through each device detected.
deviceType = CType(info("DeviceID"), String)
deviceGuid = CType(info("ClassGuid"), String)
If deviceGuid = "{4D36E965-E325-11CE-BFC1-08002BE10318}" Then
actualGuid = New Guid(deviceGuid)
If EnableOrDisable = "Enable" Then
DeviceHelper.SetDeviceEnabled(actualGuid, deviceType, True)
Else
DeviceHelper.SetDeviceEnabled(actualGuid, deviceType, False)
End If
End If
Next
If EnableOrDisable = "Enable" Then
btnDisable.Enabled = True
btnEnable.Enabled = False
Else
btnDisable.Enabled = False
btnEnable.Enabled = True
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
Else
MsgBox("Oooh Va Vu!!")
End If
End Function
末级
然后在设备管理器中循环通过CD/DVD驱动器并禁用/启用它们
我还没有整理好代码——我需要将脚本作为线程运行,因为它在执行任务时挂起
我还打算让程序使用计时器事件计算出CD驱动器的状态,然后相应地报告回来。。。然后我需要让它在没有表单的系统托盘中运行,最后让它作为启用桌面交互的LSA运行
等我有空的时候我会把它做完的,但你需要的一切都应该在这里
希望这能帮到别人一点忙 我认为一种方法可能是在设备管理器中禁用设备-只需禁用DVD/CD-ROM部分中的所有条目。。。但是我该怎么做呢?