C# 创建任务到Windows任务计划程序

article/2025/10/1 18:03:47

        相信有看过我上一篇《C# 定时任务之windows任务计划程序》并且有需求的朋友已经打开过任务计划程序去尝试了,同时是否有了另一个疑问。里面已经存在的任务是怎么来的呢?能否通过我们自己的程序去创建呢?答案当然是可以的!本篇我们来实现一下

这里我们会用到taskschd.dll这个dll,可以从网上下载,也可以在电脑C:\Windows\System32查找到(一般都可以,如果不缺失的话),然后引用到我们的项目中,并将嵌入互操作类型改为false

实现功能:

添加任务到Windows任务计划程序

开发环境:

开发工具: Visual Studio 2013

.NET Framework版本:4.5

实现代码:

 /// <summary>/// 添加Windows任务计划/// </summary>/// <param name="taskName">任务名称</param>/// <param name="exePath">执行程序路径</param>/// <param name="interval">计划任务执行的频率/// https://docs.microsoft.com/en-us/windows/win32/taskschd/repetitionpattern-interval/// </param>/// 在系统C:\Windows\System32找到taskschd.dll并引用到项目中,选中dll将嵌入互操作类型改为false///更多文档参考 https://docs.microsoft.com/en-us/windows/win32/taskschd/task-scheduler-start-pagestatic void AddWinTask(string taskName, string exePath, string interval){TaskSchedulerClass scheduler = new TaskSchedulerClass();scheduler.Connect();ITaskFolder folder = scheduler.GetFolder("\\");//获取所有TaskIRegisteredTaskCollection tasks = folder.GetTasks(1);//判断该Task是否已存在bool isExists = false;for (int i = 1; i < tasks.Count; i++){if (tasks[i].Name.Equals(taskName)){isExists = true;break;}}//如果已存在则先删除if (isExists){folder.DeleteTask(taskName, 0);}//创建新的TaskITaskDefinition task = scheduler.NewTask(0);task.RegistrationInfo.Description = taskName;// IDailyTrigger、IMonthlyTrigger、IEventTriggerITimeTrigger triger = (ITimeTrigger)task.Triggers.Create(_TASK_TRIGGER_TYPE2.TASK_TRIGGER_TIME);//执行间隔triger.Repetition.Interval = interval;//任务开始时间(第一次执行时间)triger.StartBoundary = DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss");//指定要执行的程序路径IExecAction action = (IExecAction)task.Actions.Create(_TASK_ACTION_TYPE.TASK_ACTION_EXEC);action.Path = exePath;//设置参数action.Arguments = "C#";//注册任务并开启执行IRegisteredTask regTask = folder.RegisterTaskDefinition(taskName, task,(int)_TASK_CREATION.TASK_CREATE,null,null,_TASK_LOGON_TYPE.TASK_LOGON_INTERACTIVE_TOKEN);IRunningTask runTask = regTask.Run(null);}
//此处直接调用
//每2分钟执行一次
AddWinTask("mytask", @"D:test.exe", "PT2M");

更多的使用方法我已再注释中标明了帮助文档链接。

由简入繁,拿来即用

更多精彩,请搜索公众号:Csharp 小记


http://chatgpt.dhexx.cn/article/sXUluvPi.shtml

相关文章

windows任务计划程序运行python脚本失败的原因

前言 用windows任务计划程序定时执行py脚本&#xff0c;为什么会执行失败&#xff1f;运行结果显示(0x1)? 直接闪退&#xff1f; 在IDE运行程序&#xff0c;正常运行 在文件管理器目录下运行程序&#xff0c;也没有问题。 但是为什么在任务计划程序执行就不行呢&#xff1f…

计算机管理任务计划程序损坏,处理设置任务计划程序win10中出错不可用的方法...

win10系统是很多的小伙伴都很多的小伙伴都安装了的&#xff0c;那我们在电脑中有小伙伴遇到自带的有任务计划程序的功能的&#xff0c;那有小伙伴遇到任务计划程序不可用的错误提示的问题&#xff0c;遇到这个问题应该怎么办呢&#xff0c;如果你也是遇到设置任务计划的话&…

使用Windows[任务计划程序]设置定时任务

文章目录 使用Windows[任务计划程序]设置定时任务[任务计划程序]打开位置Windows 11Windows 10 创建定期启动程序任务创建基本任务给任务命名&#xff0c;并添加任务描述根据需求设置触发器&#xff0c;下图选择每天都执行设置触发器的执行时间&#xff0c;下图设置每天20点执行…

任务计划程序未执行

出现上述问题的原因是&#xff0c;在设置任务中的安全措施选项时&#xff0c;要选择不管用户是否登录时运行 把上面的选项勾上&#xff0c;就可以了

使用windows的任务计划程序定时执行Python脚本

第一步&#xff1a;打开控制面板–》管理工具–》计算机管理 第二步&#xff1a;选择系统工具–》任务计划程序&#xff0c;点击右侧的创建基本任务 第三步&#xff1a;输入任务名称&#xff0c;点击下一步&#xff0c;进入设置触发器界面 第四步&#xff1a;按实际需要勾选希望…

分享:python+Windows自带任务计划程序,实现定时自动删微信的video文件夹

目录 0. 背景1. 使用python实现删微信的video文件夹1.1 代码1.2 打包 2. 使用python实现自动添加任务计划程序2.1 代码2.2 打包 3. 使用bat脚本方便操作3.1 手动删.bat3.2 加入定时任务.bat 0. 背景 pc微信实在太占用磁盘空间了&#xff0c;特别是其中的视频文件夹。所以有了这…

Windows下如何在任务计划程序中添加自动关机任务计划程序?

1. 首先打开并点击“计算机管理”→“系统工具”→“任务计划程序”。Windows 10 中在开始菜单鼠标右击 Windows 徽标键&#xff0c;弹出快捷菜单&#xff0c;点击“计算机管理”程序。如下图所示&#xff1a; 2. 在任务计划程序中&#xff0c;创建新的文件夹。 3. 点击右侧操作…

计算机管理任务计划程序全部禁用,Win10系统设置任务计划程序出现“任务计划程序不可用”如何解决...

在win10纯净版系统中&#xff0c;自带有任务计划程序功能&#xff0c;可以让用户们计划启动程序&#xff0c;但是有些用户在设置任务计划程序的时候&#xff0c;出现了“任务计划程序不可用”的提示&#xff0c;该怎么办呢&#xff0c;接下来给大家分享一下Win10系统设置任务计…

windows任务计划程序运行结果(0x1)

网上查了结果&#xff0c;说调用的函数不正确&#xff0c;或调用了未知函数 我这个任务是调用了备份的bat&#xff0c;bat正确&#xff0c;排除此说法。 我接着把这个任务手动点启动&#xff0c;也 没反应&#xff0c;接着重新属性修改了一下&#xff0c;让我再次输入windows管…

自动化脚本任务计划程序(Windows)

任务计划程序&#xff08;Windows&#xff09; 我们使用对CSV 文件、Excel 文件和数据库中的数据进行处理。 命令行中的脚本都是通过手动运行的&#xff0c;就像这样&#xff1a; python python_script.py input_file.txt output_file.csv这是一种最常见的运行脚本的方法&…

任务计划程序使用方法

写了个很小的exe&#xff0c;然后想设置成每天启动运行的&#xff0c;就顺手搞了篇文章。 先winr 输入compmgmt.msc像这样 点 任务计划程序里的任务计划程序库像这样 然后点击右边的创建任务 名称就随便写写&#xff0c;其他的基本不用改&#xff0c;直接下一项 到触发器哪…

Windows任务计划程序Task Scheduler笔记

微软文档居然搜不到了 Windows任务计划程序已经存在许多年了&#xff0c;原来在微软的TechNet上有详细的操作介绍的&#xff0c;现在发现网站改版&#xff0c;原来的介绍居然搜索不到了&#xff0c;微软的平台上出现这种事情&#xff0c;也是比较吃惊了。 添加任务计划不难 …

设定任务计划程序

目录 计算机设定任务计划程序步骤如下 1. 点击Windows图标 > 搜索任务计划程序 > 打开 2. 点击任务计划程序库 > 在右边空白部分右击 > 新建任务 3. 常规 > 填写相关信息 4. 触发器 > 新建 > 填写相关设定 > 确定 5. 操作 > 新建 > 浏览 &…

Windows 任务计划程序(task scheduler)介绍

一、入口 任务计划程序在windows绝大多数版本都是系统自带&#xff0c;可以通过一下入口找到 1、开始——&#xff08;windows&#xff09;管理工具 2、服务器管理器——工具&#xff08;server版&#xff09; 3、我的电脑&#xff08;此电脑&#xff09;——点击我的电脑&…

前端Vue 项目性能优化

前言 Vue 框架通过数据双向绑定和虚拟 DOM 技术&#xff0c;帮我们处理了前端开发中最脏最累的 DOM 操作部分&#xff0c; 我们不再需要去考虑如何操作 DOM 以及如何最高效地操作 DOM&#xff1b;但 Vue 项目中仍然存在项目首屏优化、Webpack 编译配置优化等问题&#xff0c;所…

7 Web前端性能优化

一般说来Web前端指网站业务逻辑之前的部分&#xff0c;包括浏览器加载、网站视图模型、图片服务、CDN服务等&#xff0c;主要优化手段有优化浏览器访问、使用反向代理、CDN等。 1 浏览器访问优化 减少http请求 HTTP协议是无状态的应用层协议&#xff0c;意味着每次HTTP请求都…

前端性能优化的方向

目前大概整理为三个大方向&#xff1a;底层代码层面的书写优化、中层项目结构的优化&#xff0c;上层项目部署的优化 目录 1.代码压缩2.代码优化3.服务器渲染4.[SEO](https://so.csdn.net/so/search?qSEO%E4%BC%98%E5%8C%96&spm1001.2101.3001.7020)优化5.静态资源使用[C…

web前端性能优化总结

转自&#xff1a;http://www.2cto.com/kf/201604/498725.html 网站的划分一般为二&#xff1a;前端和后台。我们可以理解成后台是用来实现网站的功能的&#xff0c;比如&#xff1a;实现用户注册&#xff0c;用户能够为文章发表评论等等。而前端呢&#xff1f;其实应该是属于功…

前端性能优化学习 02 Web 性能指标

Web 性能指标 我们已经知道性能的重要性&#xff0c;但当我们讨论性能的时候&#xff0c;让一个网页变得更快&#xff0c;具体指哪些内容&#xff1f; 事实上性能是相对的&#xff1a; 对于一个用户而言&#xff0c;一个站点可能速度很快&#xff08;在具有功能强大的设备的…

web前端优化--图片优化

今天逛掘金浏览到一片有关web前端优化之图片优化的文章&#xff0c;很详细&#xff0c;比我这里总结的都全&#xff0c;大家可移步浏览&#xff1a; https://juejin.im/post/59a7725b6fb9a02497170459 文章中除了自己之前用到的&#xff0c;还有img的srcset和sizes的方法没用…