在我们的项目中,我们收到了一个要求,即用户需要通过我们的应用程序gui启用/禁用COM端口/ USB端口/以太网端口。是否可以通过编程方式启用/禁用硬件?
是否可以在C#中以编程方式操纵harware的启用/禁用状态?
在我们的项目中,我们收到了一个要求,即用户需要通过我们的应用程序gui启用/禁用COM端口/ USB端口/以太网端口。是否可以通过编程方式启用/禁用硬件?
是否可以在C#中以编程方式操纵harware的启用/禁用状态?
根据this discussion thread中的回复,可以通过修改注册表项来禁用USB端口。你当然可以在C#中做到这一点。
一般来说,这实际上是一个Windows硬件问题,而不是C#问题。 C#没有任何特殊的访问或硬件控制 - 您想在C#中执行的任何操作都必须使用Windows操作系统API或配置工具完成。几乎任何非托管的Windows API都可以使用.NET的PInvoke从托管的.NET代码(C#或其他)调用。
如果你可以编写一个独立的* .exe文件或者其他东西来完成它,你可以在C#代码中调用* .exe文件。
签出System.Diagnostics.Process API。
System.Diagnostics.Processp = new Systems.Diagnostics.Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.FileName = "cmd";
p.StartInfo.Arguments = "..."; // Your command and args here
p.StartInfo.RedirectStandartOutput = true;
p.Start();
p.WaitForExit();
祝你好运!
还有一个类似的问题在这里: http://stackoverflow.com/questions/668889/port-enable-disable – 2010-04-12 18:37:56