一些解释:对于我正在研究的项目,我必须编写一个在后台运行的程序,检测文件的更改,并将修改后的文件上传到Web服务,以便其他人可以使用.如果不是用户修改大文件并决定在编辑后立即关闭其计算机,则非常简单的同步.
我可以取消上传并等待下次重启以进行上传,但我可以想象用户第二天早上将文件从网络下载到另一台计算机,并且不明白为什么他昨晚的更改不存在.
所以我的想法是检测用户何时注销或重新启动Windows,如果我正在上传,只要询问用户"我们仍在同步Foo.txt您刚刚更改的文件.您确定要重新启动吗? ?在重新启动计算机之前,您的更改将无法用于其他人!" 如果用户拒绝,我需要取消重启/注销
这可能吗?
我有一个cmd脚本,它将执行一组补丁,如果需要重新启动以避免修补问题,它就会中止.如果安排重启(例如通过"shutdown"命令),我还想将脚本扩展为中止,以避免在可能的情况下重新启动补丁.不幸的是,我没有设法找到一种方法来检测这个,除了尝试安排另一个关机,这导致:
已经安排了系统关闭.(1190)
虽然我理论上可以使用这个,但我不认为每次我需要检查计划的重启时吓跑登录用户都是好的做法.我真正需要的是通过"shutdown"命令修改状态的QUERY方法.
这可能吗?我真的很高兴任何解决方案都不会让我在系统上永久运行应用程序以捕获关闭事件(我不认为甚至会在实际触发关闭之前发送)
我使用以下代码关闭自己的System.It工作正常.我需要 关闭另一个系统,它连接在LAN连接.我无法使用此代码执行此操作.如何使用shutdown.exe关闭另一个系统?我的操作系统是windows7.
using System.Diagnostics;
protected void Button1_Click(object sender, EventArgs e)
{
Process.Start("shutdown.exe", "-s -t 00");
}
Run Code Online (Sandbox Code Playgroud) 我正在运行基于Arch的Manjaro Linux并为自己编写了一个小程序,每7个小时启动一次,并在后台完全运行.此更新程序由systemd启动.
我想知道的是:无论用户是想关闭它还是任何程序想要这样做,我怎样才能防止在程序运行期间任何系统关闭/重启.
最好的是,如果任何关闭/重启动作不会被取消而是延迟,那么当更新程序完成运行时,关机/重启将继续.
我的系统部分是:
uupgrades.timer
[Unit]
Description=UU Upgrades Timer
[Timer]
OnBootSec=23min
OnUnitActiveSec=7h
Unit=uupgrades.target
[Install]
WantedBy=basic.target
Run Code Online (Sandbox Code Playgroud)
uupgrades.target
[Unit]
Description=UU Upgrades Timer Target
StopWhenUnneeded=yes
Run Code Online (Sandbox Code Playgroud)
并在文件夹uupgrades.target.wants中
uupgrades.service
[Unit]
Description=UU Update Program
[Service]
Nice=19
IOSchedulingClass=2
IOSchedulingPriority=7
ExecStart=/usr/bin/uupgrades
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
由于我尽快为我的Ubuntu服务器安装挂起的更新,我必须经常重启我的linux服务器.我正在该服务器上运行webapp,并且想要警告我的用户有关挂起的重启.现在,我手动执行此操作,在重新启动之前添加通知,给他们一些时间来完成他们的工作,重新启动并删除公告.
我希望,shutdown -r +60写一个文件,其中包含有关重启的所有信息,我可以检查每次访问.有这样的文件吗?由于性能原因,更喜欢像/ proc这样的虚拟文件系统中的文件...
我正在运行Ubuntu 10.04.2 LTS
如何在Delphi应用程序中(7,尝试将其移植到2010)强制系统(XP或7)关闭?
我有一个应用程序隐藏在红十字会关闭.用户可以通过右键单击托盘图标并选择退出来退出.但它显然会阻止Windows关闭,所以我做了一个程序来响应WM_QUERYENDSESSION来启用关闭,这是相关的代码:
procedure TMainForm.OnWindowsEnd(var Msg: TMessage); // responds to message WM_QUERYENDSESSION;
begin
AllowClose:=true;
Close;
end;
procedure TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose:=AllowClose;
if NOt AllowClose then
Hide;
end;
Run Code Online (Sandbox Code Playgroud)
但奇怪的事情不断发生.当我发出关闭时,这个应用程序很好地关闭.但就是这样.当我发出第二次关机时,系统退出正常.(我在WinXP中测试这个).
可能是什么原因?谢谢
答案 代码应如下所示
procedure TMainForm.OnWindowsEnd(var Msg: TMessage); // responds to message WM_ENDSESSION;
begin
// Possible checking for flags, see http://msdn.microsoft.com/en-us/library/aa376889%28v=vs.85%29.aspx
AllowClose:=true;
Msg.Result:=1;
end;
procedure TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose:=AllowClose;
if NOt AllowClose then
Hide;
end;
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个执行简单命令的批处理文件:
关机-h
我已经创建了一个包含该确切行的.bat文件,但是当我运行它时,它所做的只是垃圾邮件,命令提示符就像疯了一样.
我看过批处理文件网站,@ echo off看起来很受欢迎,但这不是只是没有告诉我,而它完全一样吗?
我需要在启动和关闭时将声卡静音/取消静音.
我已经找到了一些代码来完成这项工作,但是Windows通常会在关机时发出砰砰声并且声音永远不会被静音.
有人可以告诉我如何暂停关机足够长的时间让我的应用程序静音吗?我可以使用一个简单的TTimer来暂停应用程序足够长的时间来运行静音,然后让Windows继续关闭.
我如何告诉Windows等待?
我注意到,如果我让Firefox继续运行并尝试关机,Windows会停止并显示一条消息"这些程序阻止窗口关闭......"并需要单击以强制Firefox关闭.我需要找到.
我在/ etc/inittab中运行带有条目的BusyBox
::sysinit:/etc/init.d/rcS
Run Code Online (Sandbox Code Playgroud)
rcS脚本在启动时调用/etc/rc.d/中的所有启动脚本.
如何通过调用/etc/rc.d/xxx停止调用BusyBox小程序"poweroff","halt"或"reboot"来告诉BusyBox init关闭所有服务?