我需要检测Windows何时关闭(或重新启动)或用户何时注销.我需要在应用程序关闭之前正确关闭应用程序.我注意到Windows关闭时没有出现退出应用程序事件.
我看了帖子c#中是否有办法检测Windows关机/注销并取消该操作(询问用户后)
但我不确定在关闭前我应该在哪里执行操作.谢谢.
我正在开发一个需要检测系统关闭的应用程序.但是,我没有找到任何可靠的方式来获取此事件的通知.
我知道在关机时,我的应用程序会收到一个SIGTERM
信号后跟一个SIGKILL
.我想知道是否有任何方法可以查询a SIGTERM
是否是关闭序列的一部分?
有没有人知道是否有办法以编程方式查询(C API)?
据我所知,系统没有提供任何其他方法来查询即将发生的关机.如果是这样,那也可以解决我的问题.我也一直在尝试runlevels
,但改变runlevels
似乎是即时的,没有任何预先警告.
我正在尝试编写一个脚本,如果命令填充了一些要求,将关闭计算机
os.system("poweroff")
Run Code Online (Sandbox Code Playgroud)
也试过了
os.system("shutdown now -h")
Run Code Online (Sandbox Code Playgroud)
还有其他几个.但是当我运行它时没有任何反应,计算机通过代码而不会崩溃或产生任何错误消息并正常终止脚本,而无需关闭计算机.
如何在python中关闭计算机?
编辑:
似乎我尝试过的命令需要root访问权限.有没有办法在没有提升权限的情况下从脚本关闭机器?
我正在制作一个基于英特尔x86架构的保护模式操作系统,并且正在寻找有关如何通过汇编代码关闭计算机电源的一些信息.你能帮我解决这个问题吗?
程序集中的hlt指令可以在停止处理器时关闭计算机吗?如果可以用我所说的来完成,这是正确的方法吗?
可以关机吗?
start:
xor ax, ax; ;clear ax
mov bx, ax; ;clear bx
cli ;stop all interrupts
hlt ;halt the cpu
Run Code Online (Sandbox Code Playgroud)
如果这不是可行的方法,如果这不会关闭系统,请告诉我正确的方法.
我知道ExitWindowsEx()
API函数只关闭Windows.但据我所知,你不能让Windows安装任何挂起的更新.
是否有任何API支持安装任何挂起的更新(在标准的蓝屏中说" 已经安装了m个更新 - 请不要关闭或拔掉你的电脑,Windows将自行关闭 ")然后关闭Windows(相当于单击Windows用户界面的"安装更新和关闭"菜单选项)?
(操作系统版本:Windows XP及更高版本.)
关闭Windows 8.1时,Google Chrome会生成错误消息"Google Chrome未正常关闭".如何在不向我提供错误消息的情况下关闭Chrome?
我不必以Google用户身份登录.
google-chrome application-shutdown system-shutdown windows-8.1
有没有办法只在关机时运行脚本?
我的意思是,只有当计算机真正关闭到关闭状态时.仅执行注销或重新启动时,不应运行此脚本.
我希望能够从我的应用程序中检测(并且,如果需要,中止)操作系统关闭,最好是使用Windows API.
我知道可以使用命令手动中止关机shutdown -a
在最坏的情况下,我可以ShellExecute这个,但我想知道是否有更好的方法来以编程方式阻止关机.
也许只能以编程方式通知操作系统即将关闭 - 如何做到这一点?
我正在调试 systemd 关闭问题。这里的问题是一些文件系统在服务仍在运行时被卸载。
一般来说,我们希望systemd先关闭服务,然后卸载挂载点。
但在这里,卸载和停止服务是并行发生的。(见下文)。首先还要卸载根文件系统。
# Unmounting /root...
Unmounting /var/lib/ntp...
Unmounting /etc/cron.d/local...
[ OK ] Stopped Apply Kernel Variables.
Unmounting /proc/fs/nfsd...
Unmounting /tmp/rshell/trace...
Stopping Availability of block devices...
Unmounting /etc/timestamp...
Unmounting /var/lib/nfs/rpc_pipefs...
Unmounting /etc/sysconfig/clock...
[ OK ] Removed slice system-getty.slice.
[ OK ] Stopped Load Kernel Modules.
Unmounting /etc/ssh/ssh_external_host_rsa_key...
[ OK ] Stopped Create Static Device Nodes in /dev.
Unmounting /mnt/log...
[ OK ] Stopped Resets System Activity Logs.
Stopping Crond Periodic Command Scheduler...
[ OK ] Stopped Mount Restricted …
Run Code Online (Sandbox Code Playgroud)