Windows环境中Python脚本开机自启动及其监控自启动

1 开机自启动

Windows 10/Windows Server 201X具有一个名为“启动”的已知文件夹,系统每次启动开始自动运行应用程序、快捷方式和脚本时都会检查该文件夹,而无需额外配置

要在Windows启动时运行脚本,先使用Windows+R快捷键打开“运行”对话框。
在这里插入图片描述
键入命令:shell:startup

C:\Users\lhy\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

测试脚本(.bat):

@echo off
chcp 65001
d:
cd \xxx
python xxx.py

将该文件放入 Startup 文件夹下,重启电脑即可。注意当文件的属性被设置为“隐藏”时,重启时可能会不执行

在运行上述Batch(BAT)脚本时,通常会弹出一个命令行窗口来显示脚本的执行。如果想在运行BAT脚本时关闭命令行窗口,可以使用VBScript创建一个新的VBScript(.vbs)文件,然后在该文件中使用以下代码来运行BAT脚本::

CreateObject("Wscript.Shell").Run "c:xxx\xxx.bat",0,True

具体可以参考:

在Windows下运行命令行程序,如何才能不显示命令行窗口,让程序保持后台运行?
https://blog.csdn.net/quicmous/article/details/136420097
运行bat时隐藏cmd窗口:
https://www.cnblogs.com/mq0036/p/14633154.html

2 运行监控自启动

上述脚本只能达到一个开机自启动,无法检查程序是否在运行以及重启程序,因此可采用下述脚本,注意需要将上述的**.bat转换为.exe文件**(网上有工具可自行查找):

@echo off
:start
choice /t 5 /d y /n >nul
tasklist|find /i "xx.exe"
if %errorlevel%==0 (
echo "yes"
) else (
echo "No"
start "" cmd /k "xxx\xx.exe"
)
goto start

其中:

### 定时5s
choice /t 5 /d y /n >nul
### 如果存在该进程
if %errorlevel%==0 (
### 如果不存在,则自行启动
start "" cmd /k "xxx\xx.exe"

也可以采用powershell脚本(.ps1)

$pythonPath = "C:\XXX\anaconda3\python.exe"
$scriptPath = "D:\XXX.py"while ($true) {Start-Process -FilePath $pythonPath -ArgumentList $scriptPath -NoNewWindowwhile (Get-Process -Name "python" -ErrorAction SilentlyContinue) {Start-Sleep -Seconds 5}Start-Sleep -Seconds 5
}

把应用程序与批处理文件加入到安全白名单中。加入到白名单中的文件目录,文件,安全防护工具将信任该软件,可以直接使用。

以360安全卫士为例,在信任区添加python文件目录,以及启动文件夹中的批处理文件。

在这里插入图片描述

或者将上述.bat或.ps1和.exe一起粘贴到Startup 文件夹,否则.exe可能会被删除,从而报内存不足的错误。或者参考:https://m.7jianban.com/jiaocheng/29941.html

3 设置了开机启动,但没有自启

  • 问题:脚本加入启动项后,开机没有自动启动

  • 原因分析:win10系统,只要是图标右下角带盾牌标志的软件,加入系统的启动文件夹:如:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 里面,每次开机后都会启动失败!据说这个是win10出于系统安全考虑,加入了UAC,对系统管理员权限做了限制造成的。

  • 解决方案:

1 win+R打开运行窗口,运行打开组策略(家庭版没有组策略功能),输入:gpedit.msc
在这里插入图片描述
2 依次展开:计算机配置-》Windows设置-》安全设置-》本地策略-》安全选项-》用户账户控制:以管理员批准模式运行所有管理员,设置为已禁用
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3 重启计算机

如果还不行,就在cmd里执行:

# 使用环境变量%ProgramData%或者%SYSTEMDRIVE%
echo %SYSTEMDRIVE%\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
echo %ProgramData%\Microsoft\Windows\Start Menu\Programs\StartUp

参考:
https://m.jb51.net/python/323335imo.htm
https://blog.csdn.net/weixin_44462773/article/details/135739385
https://blog.csdn.net/weixin_40277264/article/details/128862187

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/63316.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于JavaSwing的贪吃蛇项目(最新项目)

Java贪吃蛇游戏 目录 文章目录 Java贪吃蛇游戏目录第一章 项目概述1.1 设计背景1.2 设计目的1.3 开发环境 第二章 需求分析2.1 功能需求2.1.1 基础功能2.1.2 扩展功能 2.2 性能需求2.3 用户体验需求 第三章 概要设计3.1 系统架构3.1.1 总体架构3.1.2 类设计 3.2 核心算法设计3…

SpringBoot 赋能:精铸超稳会员制医疗预约系统,夯实就医数据根基

1绪论 1.1开发背景 传统的管理方式都在使用手工记录的方式进行记录,这种方式耗时,而且对于信息量比较大的情况想要快速查找某一信息非常慢,对于会员制医疗预约服务信息的统计获取比较繁琐,随着网络技术的发展,采用电脑…

基于FPGA的智能电子密码指纹锁(开源全免)

基于FPGA的智能电子密码指纹锁 一、功能描述硬件资源需求 二、整体框架知识准备AS608指纹模块4*4数字键盘模块 三、Verilog代码实现以及仿真验证1.AS608_data模块2.check_hand模块3.four_four_key模块4.check_mima模块5.change_mima模块6.seg_ctrl模块7.uart_top模块8.key_debo…

动态计算加载图片

学习啦 别名路径:①npm install path --save-dev②配置 // vite.config,js import { defineConfig } from vite import vue from vitejs/plugin-vueimport { viteStaticCopy } from vite-plugin-static-copy import path from path export default defineConfig({re…

精确的单向延迟测量:使用普通硬件和软件

论文标题:Precise One-way Delay Measurement with Common Hardware and Software(精确的单向延迟测量:使用普通硬件和软件) 作者信息:Maciej Muehleisen 和 Mazen Abdel Latif,来自Ericsson Research Eri…

基于Java+Swing+Mysql的网络聊天室

博主介绍: 大家好,本人精通Java、Python、C#、C、C编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…

Linux-音频应用编程

ALPHA I.MX6U 开发板支持音频,板上搭载了音频编解码芯片 WM8960,支持播放以及录音功能!本章我们来学习 Linux 下的音频应用编程,音频应用编程相比于前面几个章节所介绍的内容、其难度有所上升,但是笔者仅向大家介绍 Li…

【RBF SBN READ】hadoop社区基于RBF的SBN READ请求流转

读写分离功能的背景及架构 当前联邦生产集群的各个子集群只有Active NameNode在工作,当读写任务变得繁忙的时候,只有一个Active负责处理的话,此时集群的响应和处理能力业务侧感知会明显下降,为此,我们将引入Observer架构,实现读写功能的分离,使得Active只负责写请求,而…

视频自学笔记

一、视频技术基本框架 二、视频信号分类 2.1信号形式 2.1.1模拟视频 模拟视频是指由连续的模拟信号组成的视频图像,以前所接触的电影、电视都是模拟信号,之所以将它们称为模拟信号,是因为它们模拟了表示声音、图像信息的物理量。摄像机是获…

操作系统——大容量存储结构

笔记内容及图片整理自XJTUSE “操作系统” 课程ppt,仅供学习交流使用,谢谢。 大容量存储结构概述 磁盘 磁盘为现代计算机系统提供大量外存。每个盘片为平的圆状(类似CD),普通盘片直径为4.5~9.0厘米。盘片的两面都涂着…

CSS一些小点 —— 12.7

1. box-sizing: border-box box-sizing 属性,默认值为 content-box box-sizing: border-box 使padding和border的值不会再影响元素的宽高;padding和border的值算在指定宽高的内部(但是外边距依然算做外部) 2. overflow: hidden …

【GESP】C++一级练习 luogu-P1425, 小鱼的游泳时间

GESP一级综合练习,主要涉及时间计算,难度★☆☆☆☆。 题目题解详见:https://www.coderli.com/gesp-1-luogu-p1425/ 【GESP】C一级练习 luogu-P1425, 小鱼的游泳时间 | OneCoderGESP一级综合练习,主要涉及时间计算,难…

【网络协议栈】数据链路层(内附手画分析图 简单易懂)以太网、MAC地址、局域网、交换机、MTU、ARP协议

每日激励:【无限进步】“梦想可以大,但第一步总是小” 绪论​: 本章将开始到达TCP/IP协议中的最后一层数据链路层,本章将会写到我们日常中常见的局域网以及认识数据链路层中非常重要的协议ARP协议,后续还将进行更新网络…

二叉树的深搜(不定期更新。。。。。)

二叉树的深搜 验证二叉搜索树 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左 子树 只包含 小于 当前节点的数。 节点的右子树只包含 大于 当前节点的数。 所有左子树和右子树自身必须也是二叉…

51c嵌入式~单片机合集3

我自己的原文哦~ https://blog.51cto.com/whaosoft/12581900 一、STM32代码远程升级之IAP编程 IAP是什么 有时项目上需要远程升级单片机程序,此时需要接触到IAP编程。 IAP即为In Application Programming,解释为在应用中编程,用户自己的程…

使用setsockopt函数SO_BINDTODEVICE异常,Protocol not available

前言 最近在使用OLT的DHCP Server的时候发现一些异常现象,就是ONU发的一个vlan的discover包其他不同vlan的DHCP地址池也会收到,导致其他服务器也发了offer包,ONU同时会有多个ip地址。一开始是没有使用SO_BINDTODEVICE,后面查到使…

02 conda常用指令

目录 命令快速查找命令详细解释列出当前conda中存在的解释器环境使用指定的解释器环境创建虚拟环境激活自己创建的虚拟环境虚拟环境删除切换回主环境找到你计算机中安装的miniconda3的跟目录找到虚拟环境的目录选择需要删除的虚拟环境文件夹确认环境是否删除 补充删除虚拟环境指…

BEVFormer详细复现方案

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…

应用案例 | 船舶海洋: 水下无人航行器数字样机功能模型构建

水下无人航行器数字样机功能模型构建 一、项目背景 为响应水下装备系统研制数字化转型及装备系统数字样机建设的需要,以某型号水下无人航行器(Underwater Unmanned Vehicle,UUV)为例,构建UUV数字样机1.0功能模型。针对…

【NIPS2024】Unique3D:从单张图像高效生成高质量的3D网格

背景(现有方法的不足): 基于Score Distillation Sampling (SDS)的方法:从大型二维扩散模型中提取3D知识,生成多样化的3D结果,但存在每个案例长时间优化问题/不一致问题。 目前通过微…