使用脚本调用系统的关机对话框实现代码
- 格式:doc
- 大小:16.50 KB
- 文档页数:3
vbs实现的定时关机、重启的脚本和程序 将下⾯代码存为vbs⽂件,如:shutdown.vbs,然后双击或在⽂件上点右键选择以命令提⽰打开,如果到了你设置重启的时候,系统会出现关机的对话框。
直接下⾯代码程序会出现关机的对话框,最后的回车注释掉了,正常使⽤时,请去掉注释符。
以下代码在window 2000 下通过。
复制代码代码如下:'定时关机或重启的脚本,在windows 2000下通过' code by haiwa 2005-11-7dim ActionIDActionID = 1 '0注销,1关机,2重启,ActionTime = "2005-11-7 13:42:30" '关机或重启时间function ShutDown()dim objShellSet objShell = WScript.CreateObject("Wscript.Shell")dim Applicationset Application = CreateObject("Shell.Application.1")Application.ShutdownWindows()dim upifor upi = 0 to 4WScript.Sleep(50)objShell.sendKeys("{UP}")nextFor upi = 1 to ActionIDWScript.Sleep(50)objShell.sendKeys("{DOWN}")next'使⽤时,请把下⾏的注释符去掉'objShell.sendKeys("{ENTER}")end functionWhile trueif DateDiff("s", Now, ActionTime) < 0 thenShutDown()end ifWScript.Sleep(5*1000)wend。
使用Python在Linux环境下实现系统定时关机脚本在Linux系统中,我们经常需要在一定时间后对系统进行关机操作,这对于服务器、电脑和其他嵌入式设备来说都是非常有用的功能。
而Python作为一种强大的编程语言,可以帮助我们实现这样的功能。
本文将介绍如何使用Python在Linux环境下实现系统定时关机脚本。
一、Python与系统命令的交互在Python中,我们可以使用`os`模块来执行系统命令。
通过Python与系统命令的交互,我们可以直接使用Python来执行一些系统级别的操作,比如关机、重启等。
下面是一个简单的示例代码,演示了如何在Python中执行关机命令:```pythonimport osdef shutdown():os.system("sudo shutdown")shutdown()```上述示例代码中,我们通过`os.system("sudo shutdown")`执行了关机命令。
可以根据需要修改命令参数,比如添加定时关机的功能。
二、实现定时关机要实现定时关机的功能,我们可以借助Python的`time`模块来获取当前时间和计算时间差。
下面是一个示例代码,演示了如何在Python 中实现定时关机的功能:```pythonimport osimport timedef shutdown(delay):current_time = time.time()target_time = current_time + delaywhile time.time() < target_time:time.sleep(1)os.system("sudo shutdown")# 设置延迟时间为60秒shutdown(60)```上述示例代码中,我们通过`time.time()`函数获取当前时间,并在此基础上计算出目标关机时间`target_time`。
python自动关机代码Python自动关机代码自动关机是一个非常有用且经常使用的功能,而Python可以使这个过程变得轻松和自动化。
Python自动关机代码可以在一定时间内自动关闭计算机,无论是Linux还是Windows,都可以用Python执行此功能。
下面的文章将介绍如何编写自动关机代码以及如何使用它来自动关机。
编写自动关机代码编写自动关机代码需要Python编程的基础知识。
首先,要在Python 中导入os模块,这个模块可以让我们执行系统命令。
接下来,我们需要使用时间模块来设置计算机关闭的时间。
下面是Python自动关机代码的示例:```import osimport timetime.sleep(3600) # 1小时os.system("shutdown /s /t 10") # 10秒后关机```在上面的代码中,我们使用了time.sleep()函数来设置计算机关机前的等待时间。
在这个例子中,我们等待了1小时。
接下来,我们使用了os.system()函数来执行系统命令。
在这种情况下,我们使用了Windows系统的“shutdown”命令,在计算机关机前等待了10秒钟。
使用自动关机代码要使用Python自动关机代码,首先需要将代码保存为.py文件。
您可以在Windows中使用记事本或Notepad++等文本编辑器来完成这个过程。
接下来,您需要打开命令提示符或控制台,并切换到.py文件所在的路径。
一旦您到达了正确的路径,您可以使用以下命令来运行Python自动关机代码:```python your_file_name.py```在上面的命令中,“your_file_name.py”是您的.py文件的名称。
在运行代码后,计算机将在等待时间结束后自动关闭。
总结Python自动关机代码可以帮助我们自动执行计算机关机操作。
通过使用时间模块和os模块,我们可以编写程序来控制计算机的关闭时间。
C#实现关机的两种⽅法 1、使⽤shutdown关机命令来实现。
using System.Diagnostics; int time = 3600; //单位为:秒 Process.Start("c:/windows/system32/shutdown.exe", "-s -t "+time);ShutDown⽤法及参数(XP)⽤法: shutdown [-i | -l | -s | -r | -a] [-f] [-m computername] [-t xx] [-c "comment"] [-d up:xx:yy]没有参数显⽰此消息(与 ? 相同)-i 显⽰ GUI 界⾯,必须是第⼀个选项-l 注销(不能与选项 -m ⼀起使⽤)-s 关闭此计算机-r 关闭并重启动此计算机-a 放弃系统关机-m computername 远程计算机关机/重启动/放弃-t xx 设置关闭的超时为 xx 秒-c "comment" 关闭注释(最⼤ 127 个字符)-f 强制运⾏的应⽤程序关闭⽽没有警告-d [ u ][p]:xx:yy 关闭原因代码u 是⽤户代码p 是⼀个计划的关闭代码xx 是⼀个主要原因代码(⼩于 256 的正整数)yy 是⼀个次要原因代码(⼩于 65536 的正整数)-f:强⾏关闭应⽤程序-m 计算机名:控制远程计算机-i:显⽰图形⽤户界⾯,但必须是Shutdown的第⼀个选项-l:注销当前⽤户-r:关机并重启-t时间:设置关机倒计时-c "消息内容":输⼊关机对话框中的消息内容(不能超127个字符) 具体使⽤⽅法可参考shutdown.exe的命令⾏指令。
这种⽅法可在PC上使⽤,不过当系统为WINCE时,WINCE没有shutdown.exe,所以该⽅法将不再使⽤。
可⽤第⼆种⽅法。
2、调⽤WIN32 API来实现1using System;2using System.Collections.Generic;3using System.Text;4using System.Runtime.InteropServices;56namespace TestShutdown7 {8class SystemUtil9 {10 [StructLayout(LayoutKind.Sequential, Pack = 1)]11internal struct TokPriv1Luid12 {13public int Count;14public long Luid;15public int Attr;16 }1718 [DllImport("kernel32.dll", ExactSpelling = true)]19internal static extern IntPtr GetCurrentProcess();2021 [DllImport("advapi32.dll", ExactSpelling = true, SetLastError = true)]22internal static extern bool OpenProcessToken(IntPtr h, int acc, ref IntPtr phtok);2324 [DllImport("advapi32.dll", SetLastError = true)]25internal static extern bool LookupPrivilegeValue(string host, string name, ref long pluid);2627 [DllImport("advapi32.dll", ExactSpelling = true, SetLastError = true)]28internal static extern bool AdjustTokenPrivileges(IntPtr htok, bool disall, ref TokPriv1Luid newst, int len, IntPtr prev, IntPtr relen); 2930 [DllImport("user32.dll", ExactSpelling = true, SetLastError = true)]31internal static extern bool ExitWindowsEx(int flg, int rea);3233internal const int SE_PRIVILEGE_ENABLED = 0x00000002;34internal const int TOKEN_QUERY = 0x00000008;35internal const int TOKEN_ADJUST_PRIVILEGES = 0x00000020;36internal const string SE_SHUTDOWN_NAME = "SeShutdownPrivilege";37internal const int EWX_LOGOFF = 0x00000000;38internal const int EWX_SHUTDOWN = 0x00000001;39internal const int EWX_REBOOT = 0x00000002;40internal const int EWX_FORCE = 0x00000004;41internal const int EWX_POWEROFF = 0x00000008;42internal const int EWX_FORCEIFHUNG = 0x00000010;4344private static void DoExitWin(int flg)45 {46bool ok;47 TokPriv1Luid tp;48 IntPtr hproc = GetCurrentProcess();49 IntPtr htok = IntPtr.Zero;50 ok = OpenProcessToken(hproc, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, ref htok);51 tp.Count = 1;52 tp.Luid = 0;53 tp.Attr = SE_PRIVILEGE_ENABLED;54 ok = LookupPrivilegeValue(null, SE_SHUTDOWN_NAME, ref tp.Luid);55 ok = AdjustTokenPrivileges(htok, false, ref tp, 0, IntPtr.Zero, IntPtr.Zero);56 ok = ExitWindowsEx(flg, 0);57 }5859public static void Reboot()60 {61 DoExitWin(EWX_FORCE | EWX_REBOOT); //重启62 }6364public static void PowerOff()65 {66 DoExitWin(EWX_FORCE | EWX_POWEROFF); //关机67 }6869public static void LogoOff()70 {71 DoExitWin(EWX_FORCE | EWX_LOGOFF); //注销72 }7374 }7576 }。
VB实现自动关机源代码让Windows 2000/XP自动关机 at 18:30 Shutdown -s如果你想出门,但电脑又正在进行工作,这时就要用到自动关机。
大多数实现自动关机的方法都是使用一些第三方软件,这样不仅麻烦,而且为实现这个小功能而专门动用一个软件,显的小题大做了!其实Windows XP(Windows 2000也可以)自身就具备定时关机的功能,下面我们就来看看如何实现Windows XP的自动关机。
LDC723E2160312241Windows XP的关机是由Shutdown.exe程序来控制的,位于Windows\System32文件夹中。
如果想让Windows 2000也实现同样的效果,可以把Shutdown.exe复制到系统目录下。
比如你的电脑要在22:00关机,可以选择“开始→运行”,输入“at 22:00 Shutdown -s”,这样,到了22点电脑就会出现“系统关机”对话框,默认有30秒钟的倒计时并提示你保存工作。
如果你想以倒计时的方式关机,可以输入“Shutdown.exe -s -t 3600”,这里表示60分钟后自动关机,“3600”代表60分钟。
设置好自动关机后,如果想取消的话,可以在运行中输入“shutdown -a”。
另外输入“shutdown -i”,则可以打开设置自动关机对话框,对自动关机进行设置。
Shutdown.exe的参数,每个都具有特定的用途,执行每一个都会产生不同的效果,比如“-s”就表示关闭本地计算机,“-a”表示取消关机操作,下面列出了更多参数,大家可以在Shutdown.exe中按需使用。
-f:强行关闭应用程序-m \\计算机名:控制远程计算机-i:显示图形用户界面,但必须是Shutdown的第一个选项-l:注销当前用户-r:关机并重启-t 时间:设置关机倒计时-c "消息内容":输入关机对话框中的消息内容(不能超127个字符)有时候,我们需要定时关闭计算机,下面介绍一个在Windows XP下实现定时关机的简单方法。
关机代码1. 引言关机代码是指能够远程执行关机操作的一段代码。
在计算机日常使用中,有时需要通过远程操作关机,特别是当服务器部署在远程机房时,远程关机变得尤为重要。
关机代码可以通过网络将关机命令传达给目标主机,并在主机上执行关机操作。
本文将介绍几种常见的关机代码实现方法,包括批处理文件、PowerShell脚本和Python脚本。
2. 批处理文件实现关机代码批处理文件是一种以.bat或者.cmd文件扩展名的脚本文件,使用Windows的批处理语言来编写。
下面是一段实现关机功能的批处理代码:@echo offecho 关机命令将在1分钟后执行,请保存好您的工作。
ping 127.0.0.1 -n 61 > nulshutdown -s -t 0代码说明: - @echo off:关闭回显功能,使终端不显示执行的命令。
- echo关机命令将在1分钟后执行,请保存好您的工作。
:输出提示信息,告知用户关机命令将在1分钟后执行。
- ping 127.0.0.1 -n 61 > nul:通过ping命令延时1分钟,其中-n参数表示发送的数据包数量,> nul表示输出重定向到空设备。
- shutdown -s -t 0:执行关机命令,其中-s表示关机,-t表示设置倒计时时间(单位为秒),0表示立刻关机。
将上述代码保存为.bat或者.cmd文件后,双击运行即可实现关机功能。
3. PowerShell脚本实现关机代码PowerShell是一种跨平台的任务自动化和配置管理框架,它集成了命令行、脚本语言和配置管理工具。
下面是一段实现关机功能的PowerShell脚本代码:```powershell Write-Host。
windows应用场景下自动关机的批处理脚本在Windows应用场景下,使用批处理脚本实现自动关机是一个非常方便的操作。
批处理脚本是一种由一系列命令组成的文本文件,通过运行这个脚本文件,可以自动执行其中的命令,从而实现一些重复性的操作,比如自动关机。
本文将介绍如何编写一个简单的批处理脚本来实现在Windows应用场景下自动关机。
首先,我们需要打开一个文本编辑器,比如记事本,来编写批处理脚本。
然后,按照以下步骤进行操作:第一步,输入关机命令。
在批处理脚本中,我们可以使用命令"shutdown"来实现关机操作。
具体命令为:shutdown /s /t 0其中,"/s"表示关机操作,"/t"后面的"0"表示立即执行关机操作,你也可以根据自己的需求进行设置。
第二步,保存脚本文件。
点击菜单栏上的"文件"选项,选择"保存"。
在保存对话框中,选择保存位置和文件名,并将文件类型设置为"所有文件",然后在文件名后面添加扩展名".bat",比如"shutdown.bat",以便将文本文件保存为批处理脚本文件。
第三步,执行脚本文件。
双击保存好的批处理脚本文件,即可执行自动关机操作。
系统会立即执行关机命令,并在倒计时结束后自动关闭计算机。
需要注意的是,使用批处理脚本关机操作时需要管理员权限,否则可能无法执行成功。
另外,由于关机操作具有破坏性,建议在使用批处理脚本前保存好所有未保存的工作,以免数据丢失。
通过编写一个简单的批处理脚本文件,我们可以在Windows应用场景下实现自动关机。
这种方法特别适用于一些需要定时自动关机的场合,比如在计划任务中设置定时关机,或者在服务器等环境下需要自动关机的情况下使用。
通过合理设置关机命令的参数,我们可以实现不同的自动关机方式,比如定时关机、延时关机等,以适应不同的使用需求。
让电脑关机的代码1. 前言在我们使用电脑的过程中,有许多时候我们都需要让电脑关机。
有时候是因为我们已经用完了电脑,或者是我们需要离开电脑,还有一些情况可能是因为电脑出现了故障,需要我们关闭电脑。
不管是什么情况,我们都需要知道如何让电脑关机。
2. 关机的操作方式让电脑关机有多种方式。
在 Windows 操作系统中,我们可以通过三种方式来关闭电脑。
第一种是通过按下键盘上的“Windows”键和“R”键弹出运行窗口,然后在窗口中输入“shutdown -s -t 0”并按下“Enter”键。
第二种是单击“开始”菜单,然后选择“关机”或“注销”选项,在弹出的对话框中选择相关选项,最后按下关机或注销按钮。
第三种是通过强制关闭电脑。
这是一种不推荐使用的方式,因为它可能对电脑的硬件和数据造成损害。
3. 代码实现这里我们使用 Python 编程语言,通过写一小段代码实现让电脑关机的功能。
```import osos.system("shutdown -s -t 0")```首先,我们需要导入 os 模块。
然后,我们可以使用 os 模块中的 system() 函数来运行指定的指令。
在这里,我们使用“shutdown-s -t 0”指令来让电脑立即关机。
4. 结论总的来说,让电脑关机的方法有多种。
无论你使用的是哪种方法,一定要确保你的所有文件都已保存。
最好按照正确的步骤和方式来让电脑关机,以免对你的电脑和数据造成损害。
如果你需要编写一个脚本来让电脑关机,你可以使用 Python 代码实现。
以前有介绍如何使用命令行调用系统的关机对话框rundll32.exe shell32.dll #60,但是,上述方法会存在一问题,XP下无法正常使用该方法进行关机
以前有介绍如何使用命令行调用系统的关机对话框:
具体方法:开始/运行:
复制代码代码如下:
rundll32.exe shell32.dll #60
但是,上述方法会存在一问题,XP下无法正常使用该方法进行关机(感谢网友沐烨发现该问题)。
问题原因可能是:正常情况下,关机对话框是有explorer.exe调用,直接使用rundll32调用时无法触发相关命令。
既然使用explorer.exe调用可以,我们可以尝试使用脚本来实现。
实现原理:
激活explorer.exe
按ALT+F4
编写VBS脚本如下(将下述内容另存为shutdown.vbs):
复制代码代码如下:
Dim objWMI,wsh
Dim colProcesses,objProcess
pid=0
set objWMI = GetObject( "winmgmts:{impersonationLevel=impersonate}//. /root/cimv2" )
set colProcesses = objWMI.ExecQuery( "SELECT * FROM Win32_Process" & _
" WHERE Name='explorer.exe'" )
for Each objProcess In colProcesses
pid = objProcess.ProcessId
Next
set wsh = WScript.CreateObject("WScript.Shell")
wsh.AppActivate pid
wsh.sendKeys "%{F4}"
上述脚本运行环境为:XP SP2
其他环境也可能正常工作,不过对于有多个explorer.exe进程的系统,就可能不正常工作了,如开了远程终端服务的多用户环境下。
以前有介绍如何使用命令行调用系统的关机对话框:
具体方法:开始/运行:
复制代码代码如下:
rundll32.exe shell32.dll #60
但是,上述方法会存在一问题,XP下无法正常使用该方法进行关机(感谢网友沐烨发现该问题)。
问题原因可能是:正常情况下,关机对话框是有explorer.exe调用,直接使用rundll32调用时无法触发相关命令。
既然使用explorer.exe调用可以,我们可以尝试使用脚本来实现。
实现原理:
激活explorer.exe
按ALT+F4
编写VBS脚本如下(将下述内容另存为shutdown.vbs):
复制代码代码如下:
Dim objWMI,wsh
Dim colProcesses,objProcess
pid=0
set objWMI = GetObject( "winmgmts:{impersonationLevel=impersonate}//. /root/cimv2" )
set colProcesses = objWMI.ExecQuery( "SELECT * FROM Win32_Process" & _
" WHERE Name='explorer.exe'" )
for Each objProcess In colProcesses
pid = objProcess.ProcessId
Next
set wsh = WScript.CreateObject("WScript.Shell")
wsh.AppActivate pid
wsh.sendKeys "%{F4}"
上述脚本运行环境为:XP SP2
其他环境也可能正常工作,不过对于有多个explorer.exe进程的系统,就可能不正常工作了,如开了远程终端服务的多用户环境下。
以前有介绍如何使用命令行调用系统的关机对话框:
具体方法:开始/运行:
复制代码代码如下:
rundll32.exe shell32.dll #60
但是,上述方法会存在一问题,XP下无法正常使用该方法进行关机(感谢网友沐烨发现该问题)。
问题原因可能是:正常情况下,关机对话框是有explorer.exe调用,直接使用rundll32调用时无法触发相关命令。
既然使用explorer.exe调用可以,我们可以尝试使用脚本来实现。
实现原理:
激活explorer.exe
按ALT+F4
编写VBS脚本如下(将下述内容另存为shutdown.vbs):
复制代码代码如下:
Dim objWMI,wsh
Dim colProcesses,objProcess
pid=0
set objWMI = GetObject( "winmgmts:{impersonationLevel=impersonate}//. /root/cimv2" )
set colProcesses = objWMI.ExecQuery( "SELECT * FROM Win32_Process" & _
" WHERE Name='explorer.exe'" )
for Each objProcess In colProcesses
pid = objProcess.ProcessId
Next
set wsh = WScript.CreateObject("WScript.Shell")
wsh.AppActivate pid
wsh.sendKeys "%{F4}"
上述脚本运行环境为:XP SP2
其他环境也可能正常工作,不过对于有多个explorer.exe进程的系统,就可能不正常工作了,如开了远程终端服务的多用户环境下。