- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在编写一个 C# 应用程序(专门用于笔记本电脑),我想了解盖子的状态,即它何时打开以及何时关闭。
我已经将 pInvoke 与 Microsoft's RegisterPowerSettingNotification function 一起使用了在this SO answer的帮助下.
所以,有了上面的内容,我知道盖子何时关闭或打开,并知道它的状态,但是我想在其他任何事情继续之前了解盖子的状态。我注意到即使盖子没有变化,回调函数也会被调用,我可以检查它的参数以了解盖子的状态,但这对我不利,因为它是一个事件,我不能简单地等待让它发生(也许有另一种方法可以解决这个问题?)。
我也尝试过 PowerEnumerate 函数,但无法从中得到任何东西(也许有一些我不知道的东西可以帮助)
编辑 1:我等不及或延迟应用程序,有 2 个问题需要我在没有 CB 的情况下获得状态,第一个是笔记本电脑连接到显示器时可以关闭盖子,从而允许用户使用笔记本电脑。如果用户在这种情况下启动应用程序,则它不应启动。第二个原因是我希望应用程序对用户友好,并通知它在启动或停止时发生的情况,如果我在错误的时间收到 cb,由于应用程序的内部逻辑,它可能会被忽略,然后将不得不等到下次我得到 cb 时,我会的。
所以,(没有双关语意)有没有办法立即获得这些信息?
编辑 2:从评论中似乎不清楚我需要什么。我需要一种查询盖子状态的方法。即 - 调用一些 API 或其他东西,返回值是状态。谢谢!
关键字:GUID_LIDSWITCH_STATE_CHANGE,WM_POWERBROADCAST,电源设置
最佳答案
我认为“lid state”不能保证反射(reflect)在电源管理属性中。您对盖子状态的兴趣是否仅仅取决于显示器?如果是这样,您可以找到一种方法来确定集成屏幕的属性(如果他们在连接到外部显示器时安装它可能会出现问题)并保存它们。然后检查正在使用的屏幕的属性并采取相应措施。
参见 System.Windows.Forms.Screen - http://msdn.microsoft.com/en-us/library/system.windows.forms.screen%28v=vs.110%29.aspx
可以从 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\DISPLAY
中的“设备参数”键中提取序列号。此处演示了如何提取它(连同其他信息):
http://sourceforge.net/p/wmimonitor/code/HEAD/tree/DisplayInfoWMIProvider/WMIProvider/WMIProvider.cs
或者,假设即使 Windows 中的机盖关闭事件设置为“不执行任何操作”,回调仍会触发,您或许可以考虑使用辅助进程或服务来一直运行并跟踪更改。您可以通过注册表或文件共享状态。您还可以查看是否有任何其他硬件项目(例如触摸板)在关闭时更改电源状态,而不管“电源计划”如何,并使用 GetDevicePowerState API 函数。
关于c# - 获取当前的笔记本电脑盖子状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26869987/
问题:将具有两个字符分隔符的数据文件加载到 Azure SQL Db 时,我们遇到以下错误。我们可能做错了什么以及如何解决这个问题? 在 Azure Databricks 中使用 Python 笔记本
我正在使用 ipython notebook 迈出第一步,我成功地将它安装在我的远程服务器上(通过 SSH),并使用以下命令启动它: ipython notebook --ip='*' ---pyla
我想知道对于一个网站来说,最好的数据库设计是什么,让用户(假设有 10k 个用户)给自己留下带有日期的注释。用户只能看到自己的笔记。 用户将看到的示例: 2014年9月28日 -去商店 -带狗去散步
我希望没有人会认为这个问题离题。我即将开始探索在 Jupyter 笔记本中使用 C# 内核。我看到有几种选择,有些似乎过时了。我对探索它们并不真正感兴趣,我只是想要一些能够很好地用于演示的东西。目的是
我已经使用此命令在 R 控制台中安装了 Rcpp,该命令直到现在通常用于安装要在 jupyter 笔记本上运行的软件包: install.packages('Rcpp', '/home/user/an
我已经使用更新了 Tornado sudo pip install --upgrade tornado 检查当前版本显示我已经有一个 4.0 以后的版本 找到命令的输出: pip 显示 Tornado
这个问题在这里已经有了答案: How can I share Jupyter notebooks with non-programmers? [closed] (6 个回答) 5年前关闭。 我安装了一
我有一个 IPython 笔记本,我不小心丢弃了一个巨大的输出 (15 MB),导致笔记本崩溃。现在,当我打开笔记本并尝试删除有问题的单元格时,笔记本又崩溃了——从而阻止了我解决问题并将笔记本恢复到稳
当我使用 ipython 笔记本(Windows 版本)运行任何 %R 代码时,输出在结果之前包含一个 480 x 480 的空白图像。我已经申请了fix #2433让 rmagic 在 Wind
大家好,我想使用新的.NET Jupyter笔记本,因此我准备了一个gitt的存储库,其中包含dockerfile(是正确的)和NuGet.config文件,例如: here the tuto 一切都
如何将本地镜像添加到 IJulia 笔记本?该图像与 IPYNB 文件位于同一本地网络文件夹中。该文件夹可通过符号链接(symbolic link)访问。我尝试过相对文件名和绝对文件名。 ![Ima
docs描述如何创建密码来保护您的 jupyter 笔记本。我希望能够创建并共享一个特定的笔记本,并为该笔记本设置特殊的密码。这可能吗? 最佳答案 不,这是不可能的。该密码保护整个 Jupyter 服
最近我了解到,使用 python 可以生成 IPython 笔记本 automatically .这看起来是个很酷的功能,我想用它来自动生成报告。但是用 julia 而不是 python。那么是否有一
我正在使用 Jupyter 笔记本,并且需要运行另一个 Jupyter 笔记本。这通常使用 %run 很简单,但另一个笔记本的路径是相对的并且包含空格。 这会产生以下错误: %run '..//../
我想在一个循环中运行完整的 Jupyter 笔记本,为笔记本的每次运行传递不同的参数。我可以使用插件传递参数,如下所述:Passing command line arguments to argv i
我真的很感谢这里的一些帮助,基本上我正在学习使用tensorflow,我决定最简单的方法是在VMware和/或Virtualbox上安装ubuntu,然后访问ipython笔记本(anaconda附带
有谁知道在执行单元格之前是否有选项(或建议的 hack)可以让 IPython 笔记本自动保存? 很多时候我一直在做一些事情而没有保存很长一段时间,然后我执行了一个愚蠢的命令,该命令在控制台上打印了如
我正在尝试在另一个文件中运行 .ipynb 文件。我想嵌套这两个的原因是因为在其中一个中,我安装了所有 conda 软件包、github 存储库,并且我不想为我将暂时使用的演示文件重做整个事情。我使用
我有多个相互链接的 Jupyter 笔记本,例如 Notebook1.ipydb 包含指向 Notebook2.ipydb 的链接,其 Markdown [Notebook2](Notebook2.i
我使用 jupyter python 中的 matplotlib 库生成了下图。正如你所看到的,我有两个不同的数据,一个是红色,另一个是绿色。我的问题是,有什么办法可以让我有一个小侧窗来说明每种颜色的
我是一名优秀的程序员,十分优秀!