标签: shutdown

使用.NET获取上次Windows关闭事件的日期时间

有没有办法找出系统上次关机的时间?

我知道有一种方法可以使用WMIWin32_OperatingSystem命名空间中使用LastBootUpTime属性找出上次启动时间.

是否有类似的发现最后关机时间?

谢谢.

.net c# time wmi shutdown

7
推荐指数
2
解决办法
8890
查看次数

如何确定PHP脚本处于终止阶段?

PHP中是否有任何函数/全局变量返回脚本的当前状态(如runnning,终止)?

或者是通过利用来设置此状态的唯一方法register_shutdown_function()

该函数看起来不灵活,因为已经注册的关闭函数可以用它覆盖.而当用户中止连接关机功能得到执行,这是不是我要找的明确,我不想引入太多的限制.

有没有其他register_shutdown_function()选择?或者如果没有,如何处理该功能的缺点?

UPDATE

只是为了澄清:我不是在寻找连接状态(例如connection_aborted()),而是寻找PHP脚本的运行状态(运行,终止).函数以了解有关我已经知道的连接状态的更多信息,但是脚本的当前状态如何?脚本是否已经被终止并且是因为那个而被销毁的对象?

UPDATE2

为了进一步澄清,我仍然没有寻找连接状态, 而是关于运行状态的可比性.它应该在CLI中工作,它没有任何连接状态,因为没有与执行代码相关的TCP连接 - 更好地说明我正在寻找什么.

php interpreter shutdown

7
推荐指数
1
解决办法
966
查看次数

在C#中使用shutdown.exe关闭另一个系统?

我使用以下代码关闭自己的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)

c# asp.net remoting shutdown system-shutdown

7
推荐指数
1
解决办法
1063
查看次数

在Tomcat关闭期间保持HTTP请求

我遇到Tomcat关机问题.在servlet容器关闭时到达的请求似乎被连接器阻止,直到容器关闭完成.

问题是,我们的servlet可能需要一分钟才能关闭,这意味着在此期间到达的连接将保持长达一分钟.

这种行为是正确/预期的吗?

不理想的Tomcat关机行为是

  1. 让现有的请求完成(因为它已经完成),但是
  2. 拒绝新的联系(而不是接受并持有它们)?

java tomcat servlets shutdown tomcat7

7
推荐指数
2
解决办法
2441
查看次数

6
推荐指数
2
解决办法
1882
查看次数

防止Windows关闭

要检测并防止关机,我使用非常简单的程序.它只有一个表单和一个私有程序,如下所示:

TForm3 = class(TForm)
private
  procedure WMQueryEndSession(var Msg : TWMQueryEndSession) ;
         message WM_QueryEndSession;
end;
Run Code Online (Sandbox Code Playgroud)

和实施

procedure TForm3.WMQueryEndSession(var Msg: TWMQueryEndSession);
begin
  Msg.Result := 0; //so I don't want to shutdown while my program is running
end;
Run Code Online (Sandbox Code Playgroud)

我编译了Delphi 5和Delphi 2010.它们都检测到了shutdown.但是当我在Delphi 2010中编译时; 在阻止关机后我的程序关闭.(PC没有关机)

如何从两者中获得相同的结果?

delphi shutdown windows-messages

6
推荐指数
1
解决办法
3251
查看次数

Shutdown Hook c ++

有什么方法可以在终止时运行代码,无论什么样的终止(异常,正常,未捕获的异常等)?我知道它实际上可以用Java,但它甚至可以在C++中使用吗?我假设一个Windows环境.

c++ hook shutdown termination exit

6
推荐指数
1
解决办法
3605
查看次数

recv()返回0

我有一个非常讨厌的问题,我在其他论坛上发现了几次,但我找不到合适的解决方案.问题是recv()在连接的最后几个字节返回0.以下是一些背景信息.

  • 两个(客户端/服务器)应用程序都在同一台机器上运行.
  • 两个(客户端/服务器)套接字都是非阻塞的
  • 传输的数据大小为53个字节.
  • 两个(客户端/服务器)在执行最后一个send()/ recv()时调用shutdown和closesocket.
  • 我也试过SO_LINGER 10秒钟,也没有成功

我调用send()几次(小块),从客户端调用53个字节.服务器多次调用recv()(4字节请求)并读取49个字节然后返回0(54字节 - 49字节,因此缺少4个字节).

MSDN和一些论坛写的非阻塞套接字:

  • recv()肯定在错误时返回<0并且设置了errno/WSAGetLastError
  • 当对方关闭连接时,recv()肯定返回= 0
  • 当读取数据时,recv()肯定会返回> 0

MSDN还说:

使用带有SD_SEND或SD_BOTH的closesocket或shutdown功能会导致在控制通道上发送RELEASE信号.由于ATM的使用单独的信号和数据信道的,有可能是最后的数据到达目的地之前,导致数据丢失释放信号可以达到远端.一种可能的解决方案是在发送的最后一个数据和ATM套接字的关闭或关闭函数调用之间编程足够的延迟.

这在recv()和send()的例子中被认为:http://msdn.microsoft.com/en-us/library/windows/desktop/ms740121(v = vs.85).aspx

但仍然没有成功,在收到49字节后,我仍然在10%的连接中得到一些中断,90%的连接成功.有任何想法吗?谢谢.

sockets shutdown zero recv closesocket

6
推荐指数
1
解决办法
3万
查看次数

StreamWriter 系统突然关闭时在文件末尾写入 NUL 字符

我正在编写一些测试应用程序,以使用StreamWriter. 执行该WriteLine方法时,系统突然关闭。重新启动机器后,我发现文件末尾有很多 NUL 字符。

我查了很多网站,包括MSDN,都没有找到解决这个问题的方法。

有人可以帮我解决这个问题吗?

如果我们执行以下步骤,可以轻松重现这一点:

  1. 创建 WindowsApplication 并在其上放置一个按钮控件。

  2. 在按钮单击事件处理程序中编写以下代码:

    私人无效button1_Click(对象发送者,EventArgs e)

     {
         string str = "Welcome to the C Sharp programming world with a test application using IO operations.";
         StreamWriter sw = new StreamWriter(fileName, true, Encoding.Unicode, str.Length);
         sw.WriteLine(str);
         sw.Close();        
     } 
    
    Run Code Online (Sandbox Code Playgroud)
  3. 运行应用程序并连续单击按钮(直到机器关闭才停止),然后按 PC 的关机按钮。

  4. 重新启动电脑并检查文件。它包含以下文本:

欢迎来到 C Sharp 编程世界,这里有一个使用 IO 操作的测试应用程序。

欢迎来到 C Sharp 编程世界,这里有一个使用 IO 操作的测试应用程序。

欢迎来到 C Sharp 编程世界,这里有一个使用 IO 操作的测试应用程序。

欢迎来到 C Sharp 编程世界,这里有一个使用 IO 操作的测试应用程序。

欢迎来到 C Sharp 编程世界,这里有一个使用 IO 操作的测试应用程序。 …

c# shutdown streamwriter

6
推荐指数
1
解决办法
4099
查看次数

在关闭信号时在 python 脚本中运行代码

我有一个在启动时在后台运行的 python 脚本。启动方法是使用 /etc/rc.local 调用的 run.sh 文件中的一个条目。确切的条目是“sudo python /home/pi/run/main.py &”。该系统是一个带有喘息的树莓派。

脚本正在运行,目前没有问题。如果关闭命令发送到系统(通过控制台“sudo shutdown -h now”),我需要进一步的脚本不要立即中止,而是先执行一些代码。这就是我到目前为止所得到的:

#!/usr/bin/env python

import atexit

@atexit.register
def byebye():
    c = "End"
    datei = open("/home/pi/logfile",'a+b')
    datei.write(c + "\n")
    datei.close()

def main():

   while True:
     ...do anything...

main()
Run Code Online (Sandbox Code Playgroud)

现在它似乎只是在关机时退出主循环。我是否需要使用不同的方式来关闭系统以便将信号传输到我的脚本,或者我可能没有使用“@atexit”方法?有任何想法吗?

谢谢

python shutdown raspberry-pi

6
推荐指数
1
解决办法
6417
查看次数