我有一个正在创建的程序,它集成了一个功能,可以告诉您当前的电源方案,并可以选择设置一个预配置的 .pow 文件。如果我在命令提示符下使用 powercfg 命令并且我已经使用
将其集成到程序中,这将非常容易做到Process.start"cmd", "/k powercfg... etc. etc."
我更希望能够使用 Windows API 来调用此设置,这样我就不必在每次要更新此设置时都运行命令窗口,这样我就可以保留当前方案动态。
据我了解,VB.net 不具备以这种方式直接使用 Windows API 的能力。做一些研究我发现 C++ 可以。我想知道是否有一种方法可以创建一个 DLL 文件,我可以使用 C++ 通过我的 VB.net 脚本调用它。或者如果有更简单的解决方案,我很想知道。
最佳答案
有几个选项供您使用。我认为在您的 VB.NET 项目中使用 WMI 可能是最好的。您将需要添加对 System.Management 和 System.Management.Instrumentation 命名空间的引用。有关使用代码的详细信息,请参阅 MSDN 上的此页面:
https://msdn.microsoft.com/en-us/library/ms257340(v=vs.80).aspx
虽然下面是一个 C# 示例,但它应该让您很好地了解如何在 .NET 中针对 WMI 编写查询,并且它在某种程度上也特定于您的目标。
Is there any API function to get the battery level in Windows Desktop Apps?
希望这对您有所帮助。
关于c++ - 如何在 VB.net 中使用 Windows 电源管理 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32360767/