使用.net以编程方式启用/禁用LID

威蒂西·马丁内斯(Witcacy Martinez)

我必须使用C#或C ++禁用笔记本电脑或上网本的LID。我找到了有关如何获取电源信息的信息。

这可能吗?使用Command LIne可以更改此设置,嗯,我需要将其转换为c#。谢谢。

威蒂西·马丁内斯(Witcacy Martinez)

首先写一个批处理文件:

    call powercfg –q >poweroptions.txt

在管理员权限下。第二个将批处理文件作为模板:

    call Powercfg –SETACVALUEINDEX [powerschemeGUID] [putsubgroupGUID] [putpowersettingGUID] 000

最后,使用上面的关键字重写模板,以备将来使用。

    public static void RunPowerCFGReport()
    {
        Process.Start(BUConfig.CurrentPath + @"\PowerCFG");
    }
    public static string GetSubGroupGuid(string AppPath)
    {

        string[] lines = File.ReadAllLines(AppPath);
        string guid = lines.Where(s => s.Contains("Power buttons and lid")).First();
        string[] loops = guid.Split(':') ;
        string pr = loops[1].Replace(" (Power buttons and lid)", "");

        return pr.Trim();
    }
    public static string GetPowerSchemeGuid(string AppPath)
    {

        string[] lines = File.ReadAllLines(AppPath);
        string guid = lines.Where(s => s.Contains("Power Scheme GUID:")).First();
        string[] loops = guid.Split(':');
        string pr = loops[1].Replace("  (Balanced)", "");

        return pr.Trim();
    }
    public static string GetPowerSettingGUID(string AppPath)
    {

        string[] lines = File.ReadAllLines(AppPath);
        string guid = lines.Where(s => s.Contains("  (Lid close action)")).First();
        string[] loops = guid.Split(':');
        string pr = loops[1].Replace("  (Lid close action)", "");

        return pr.Trim();
    }
    public static void SetPowerCFGValues(string _pathFile, string _currentPowerSchemeGuid, string      _currentPowerSettingGuid, string _currentGroupGuid)
    {
        try
        {
            StreamWriter wr;
            string currentCommand = File.ReadAllText(_pathFile);
            currentCommand = currentCommand.Replace("[powerschemeGUID]", _currentPowerSchemeGuid);
            currentCommand = currentCommand.Replace("[putsubgroupGUID]", _currentGroupGuid);
            currentCommand = currentCommand.Replace("[putpowersettingGUID]", _currentPowerSettingGuid);
            wr = new StreamWriter(_pathFile);
            wr.WriteLine(currentCommand);
            wr.Close();
        }
        catch(Exception ex)
        { 

        }

    }
    public static void SetLIDAction(string _lidAction)
    {

        Process.Start(BUConfig.CurrentPath + @"\Test.Bat");
    }
    public static void ResetLIDFile()
    {

        string commandtmeplate = "call Powercfg –SETACVALUEINDEX [powerschemeGUID] [putsubgroupGUID] [putpowersettingGUID] 000";
        StreamWriter wr = new StreamWriter(BUConfig.CurrentPath + @"\Test.Bat");
        wr.WriteLine(commandtmeplate);
    }

我尝试直接使用C#,但是Visual Studio返回错误“损坏的文件”。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Swift以编程方式启用和禁用自动旋转?

来自分类Dev

如何以编程方式检查是否使用C#启用或禁用了Windows桌面设置“自动排列图标”?

来自分类Dev

在Android中以编程方式启用“使用网络提供的值”

来自分类Dev

在Android中以编程方式启用“使用网络提供的值”

来自分类Dev

ag-grid :在按键时禁用单元格编辑并使用编辑按钮以编程方式启用行编辑(Angular 2)

来自分类Dev

以编程方式启用/禁用“省电模式”

来自分类Dev

如何以编程方式禁用/启用UIBarButtonItem

来自分类Dev

以编程方式启用/禁用活动

来自分类Dev

以编程方式启用我禁用的应用

来自分类Dev

以编程方式启用/禁用Outlook外接程序

来自分类Dev

以编程方式启用和禁用UserControl模板

来自分类Dev

以编程方式启用/禁用数据移动-无根

来自分类Dev

使用WMI或Perfmon(在.NET中以编程方式)进行监视

来自分类Dev

以编程方式使用chrome

来自分类Dev

如何以编程方式启用“使用位置”?在Android中收到消息?

来自分类Dev

如何在C#中使用LDAP以编程方式启用AD用户的交换和Lync帐户

来自分类Dev

在C#.ASP中使用动态/以编程方式创建的网格视图启用分页

来自分类Dev

如何在C#中使用LDAP以编程方式启用AD用户的交换和Lync帐户

来自分类Dev

ons-toolbar-button以编程方式启用禁用

来自分类Dev

如何以编程方式启用和禁用振动模式

来自分类Dev

如何以编程方式在UICollectionView中启用/禁用节标题?

来自分类Dev

以编程方式在IIS中启用或禁用匿名身份验证

来自分类Dev

Nativescript:如何以编程方式禁用/启用ScrollView滚动?

来自分类Dev

以编程方式在Android设备上启用/禁用辅助功能设置

来自分类Dev

如何以编程方式启用/禁用Dash在线结果?

来自分类Dev

如何以编程方式启用/禁用Dash在线结果?

来自分类Dev

在 Appium for Android 中以编程方式启用/禁用飞行模式

来自分类Dev

启用和禁用使用javascript

来自分类Dev

使用tinymce禁用/启用按钮

Related 相关文章

  1. 1

    使用Swift以编程方式启用和禁用自动旋转?

  2. 2

    如何以编程方式检查是否使用C#启用或禁用了Windows桌面设置“自动排列图标”?

  3. 3

    在Android中以编程方式启用“使用网络提供的值”

  4. 4

    在Android中以编程方式启用“使用网络提供的值”

  5. 5

    ag-grid :在按键时禁用单元格编辑并使用编辑按钮以编程方式启用行编辑(Angular 2)

  6. 6

    以编程方式启用/禁用“省电模式”

  7. 7

    如何以编程方式禁用/启用UIBarButtonItem

  8. 8

    以编程方式启用/禁用活动

  9. 9

    以编程方式启用我禁用的应用

  10. 10

    以编程方式启用/禁用Outlook外接程序

  11. 11

    以编程方式启用和禁用UserControl模板

  12. 12

    以编程方式启用/禁用数据移动-无根

  13. 13

    使用WMI或Perfmon(在.NET中以编程方式)进行监视

  14. 14

    以编程方式使用chrome

  15. 15

    如何以编程方式启用“使用位置”?在Android中收到消息?

  16. 16

    如何在C#中使用LDAP以编程方式启用AD用户的交换和Lync帐户

  17. 17

    在C#.ASP中使用动态/以编程方式创建的网格视图启用分页

  18. 18

    如何在C#中使用LDAP以编程方式启用AD用户的交换和Lync帐户

  19. 19

    ons-toolbar-button以编程方式启用禁用

  20. 20

    如何以编程方式启用和禁用振动模式

  21. 21

    如何以编程方式在UICollectionView中启用/禁用节标题?

  22. 22

    以编程方式在IIS中启用或禁用匿名身份验证

  23. 23

    Nativescript:如何以编程方式禁用/启用ScrollView滚动?

  24. 24

    以编程方式在Android设备上启用/禁用辅助功能设置

  25. 25

    如何以编程方式启用/禁用Dash在线结果?

  26. 26

    如何以编程方式启用/禁用Dash在线结果?

  27. 27

    在 Appium for Android 中以编程方式启用/禁用飞行模式

  28. 28

    启用和禁用使用javascript

  29. 29

    使用tinymce禁用/启用按钮

热门标签

归档