• webapi + windows计划 + mshta 实现定时执行任务


    当然,实现定时任务有更好的操作方式,比如
    方式一:
    asp.net mvc+quartz.net +corn +webapi,asp.net mvc做任务管理的平台,使用CronTrigger做定时触发,quartz.net做定时执行控制,webapi实现执行逻辑
    方式二:
    老生常谈的一种,windows服务(开机自启)+定时器(timer,quartz.net等)+webapi(或者其他实现执行逻辑)
    最近在做cs,timer实现时间的控制并不精确,决定以windows计划实现,先介绍一下mshta吧:

    Mshta
    它支持命令行参数,可以接收JS和VBS的方法。
    例子如下:

    //JS,要以vbscript:开头,实现不打开浏览器显示hello world!
    mshta vbscript:window.execScript("alert('hello world!');","javascript")(window.close)
    
    //VBA,要以javascript:开头,实现不打开窗体显示hello world!
    mshta javascript:window.execScript("msgBox('hello world!'):window.close","vbs") 

    WebApi

    创建一个WebApi即可,假设路径为http://localhost:22673/api/SendMail/SendToLeader,需要支持HttpGet

    那么在重建windows执行计划时,在操作--选择启动程序,可参照如下:

    //cmd执行如下,在浏览器打开连接
    explorer http://localhost:22673/api/SendMail/SendToLeader

    不打开浏览器,可参照如下:

    //cmd命令下,可通过执行如下语句实现逻辑控制,不打开浏览器
    //直接使用mshta作为程序文件可以
    //创建bat文件作为程序文件也可以
    mshta vbscript:createobject("wscript.shell").run("""iexplore"" http://localhost:22673/api/SendMail/SendToLeader",0)(window.close)
  • 相关阅读:
    Android笔记(十)ListView
    GDI+ 怎样将图片绘制成圆形的图片
    自己定义View学习之12/7(进度条之混合模式)
    iOS_21团购_Popover适应iPad横竖屏切换
    SVNserver搭建
    SNMP报文抓取与分析(一)
    我的Vim配置(自动补全/树形文件浏览)
    U盘安装ubuntu server 14.04
    vim帮助手册汉化
    QT 信号与槽connect
  • 原文地址:https://www.cnblogs.com/lcawen/p/8074738.html
Copyright © 2020-2023  润新知