美文网首页
WMI执行自动脚本逻辑

WMI执行自动脚本逻辑

作者: laravel | 来源:发表于2016-12-26 13:57 被阅读223次
  • binding绑定一个consumer与filter
  • 一个filter绑定一个timer
  • 一个consumer保存代码执行体
  • timer决定代码触发时机

C#代码如下

// 创建consumer
var obj = new ManagementClass(@"ROOT\subscription:ActiveScriptEventConsumer").CreateInstance();
obj.SetPropertyValue("Name", "Script_Created_by_Csharp");
obj.SetPropertyValue("ScriptingEngine", "JScript");
// JScript代码执行体如下
obj.SetPropertyValue("ScriptText", "var shell=new ActiveXObject(\"WScript.Shell\");shell.Run(\"cmd /c echo ddd>C:\\\\1.txt\")");
var consumerPath = obj.Put();

// 创建timer
var timer = new ManagementClass(@"ROOT\subscription:__IntervalTimerInstruction").CreateInstance();
timer.SetPropertyValue("TimerId", "tm1");
timer.SetPropertyValue("IntervalBetweenEvents", 30000);
timer.SetPropertyValue("SkipIfPassed", false);
var timerPath = timer.Put();

// 创建filter
var filter = new ManagementClass(@"ROOT\subscription:__EventFilter").CreateInstance();
filter.SetPropertyValue("Name", "ft1");
filter.SetPropertyValue("Query", "select * from __timerEvent where TimerId='tm1'");
filter.SetPropertyValue("QueryLanguage", "WQL");
var filterPath = filter.Put();

// 创建binding
var binding = new ManagementClass(@"ROOT\subscription:__FilterToConsumerBinding").CreateInstance();
binding.SetPropertyValue("Consumer", consumerPath.Path);
binding.SetPropertyValue("Filter", filterPath.Path);
var bindingPath = binding.Put();
执行时由服务DCOMLAUNCH(svchost.exe)启动 scrcons.exe 进程执行脚本,每次执行完毕后 scrcons.exe 进程退出

[http://bbs.myhack58.com/read.php?tid-185642-uid-1515.html]

相关文章

  • WMI执行自动脚本逻辑

    binding绑定一个consumer与filter 一个filter绑定一个timer 一个consumer保存...

  • 【读书笔记】自动化脚本谁来操作?

    自动化测试脚本,应该谁来负责执行? 很多时候,自动化脚本由专门的自动化测试团队来负责维护,同时执行自动化脚本,反馈...

  • Linux定时脚本

    切换到相应目录 创建脚本文件 编辑自动化脚本 或 打开自动化脚本编辑 编辑自动运行(每天5点半执行)

  • shell入门

    0. shell脚本执行 可使用自动显示git 分支的脚本来验证 1. source 通过source命令执行脚本...

  • Flask修改数据库模型迁移步骤

    对模型类做必要的修改。 执行 flask db migrate 命令,自动创建一个迁移脚本。 检查自动生成的脚本,...

  • shell,exec,source执行脚本的区别

    在UNIX/Linux中,经常需要写脚本执行自动化工作。执行脚本有多种方式,可以通过sh,source或者exec...

  • Mac开机自动执行脚本

    Mac开机自动执行脚本# 20150729 脚本需要注意权限是否正确,特别注意可执行性。 系统偏好设置->用户与群...

  • iOS自动化脚本上传IPA包到fir.im

    自动化打包直接上代码,逻辑原理自行百度 自己创建个文件将后缀名改为.py,贴代码脚本执行方法: python au...

  • Jenkins+Ant+TestNG+Testlink自动化构建

    这段时间折腾自动化测试,之前都是在Eclipse工程里面手工执行自动化测试脚本,调用Testlink API执行测...

  • 闲来无事的懒人-打包ipa

    gym 打包 cd项目根目录, 创建自动打包脚本: 提升脚本权限 chmod +x gym.sh 执行脚本 ./g...

网友评论

      本文标题:WMI执行自动脚本逻辑

      本文链接:https://www.haomeiwen.com/subject/ngyjvttx.html