基于 Windows Task Scheduler 的国服自动卫月注入
-
基于Windows Task Scheduler的国服自动卫月注入
鉴于TitleEdit插件只有在实现了开游戏后自动注入卫月才有一个比较好的
开挂使用体验,研究了一下Windows自带的Task Scheduler来实现自动注入。由于我是英文系统,本文内
大部分所有的截图选项都是英文,大家自行理解意思。步骤
启动进程记录功能
- 在开始菜单搜索或直接Win+R运行
secpol.msc
- 找到 Local Policies/Audit Policy (本地策略/审核策略)
- 双击 Audit process tracking (审核进程跟踪)选中
Success
(成功
)
现在,如果您启动任何应用程序,那么如果您在事件查看器/安全日志中查看,则每次启动应用程序时都会看到“进程创建”事件4688。
设定触发计划任务
- 打开 Task Scheduler 新建任务,起个名字,选中
Run with highest privileges
(使用最高权限运行
),设定改为 Windows 10。
- 在Trigger里新建触发器。
- 按图选择触发类型,自定义触发条件,点击 New Event Filter 进入事件过滤器。
- 分别选择如下的几个事件类别&过滤条件(似乎不改直接进入下一步也可)。
- 进入XML页面,勾上手动填写XML,填入如下代码。
<QueryList> <Query Id="0" Path="Security"> <Select Path="Security">*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and Task = 13312 and (band(Keywords,9007199254740992)) and (EventID=4688)]] and *[EventData[Data[@Name='NewProcessName'] and (Data='F:\Games\SDO\FFXIV\game\ffxiv_dx11.exe')]] </Select> </Query> </QueryList>
F:\Games\SDO\FFXIV\game\ffxiv_dx11.exe 是游戏本体exe所在的位置,请根据自己电脑上的位置自行更改。
-
一路OK,返回到这个界面,切换到 Actions 选项卡,点击 New 新建一个动作。
-
动作界面如图选择,并按照如下说明填写参数:
请注意这些参数因人而异,请不要照搬此处的举例,而是按照实际情况填写- 选择程序:请选择Dalamud根目录下的
Dalamud.Injector.exe
程序,比如我的就是D:\Code\Git\_Dalamud_\Dalamud\Dalamud\bin\Release\Dalamud.Injector.exe
- 运行参数:这个需要从通过ps1脚本手动注入时,遗留下来的最后两行参数获取,举例为我手动注入后留下的 Powershell 显示为
那么我就需要在这里填写
-1 eyJXb3JraW5nRGlyZWN0b3J5IjpudWxsLCJDb25maWd1cmF0aW9uUGF0aCI6IkQ6XFxDb2RlXFxHaXRcXF9EYWxhbXVkX1xcRGFsYW11ZFxcRGFsYW11ZFxcYmluXFxSZWxlYXNlXFxYSVZMYXVuY2hlclxcZGFsYW11ZENvbmZpZy5qc29uIiwiUGx1Z2luRGlyZWN0b3J5IjoiRDpcXENvZGVcXEdpdFxcX0RhbGFtdWRfXFxEYWxhbXVkXFxEYWxhbXVkXFxiaW5cXFJlbGVhc2VcXFhJVkxhdW5jaGVyXFxpbnN0YWxsZWRQbHVnaW5zIiwiRGVmYXVsdFBsdWdpbkRpcmVjdG9yeSI6IkQ6XFxDb2RlXFxHaXRcXF9EYWxhbXVkX1xcRGFsYW11ZFxcRGFsYW11ZFxcYmluXFxSZWxlYXNlXFxYSVZMYXVuY2hlclxcZGV2UGx1Z2lucyIsIkxhbmd1YWdlIjo0LCJHYW1lVmVyc2lvbiI6IjIwMjAuMDcuMTYuMDAwMC4wMDAwIn0=
其格式应当为-1<空格><一堆乱码>
千万注意-1和乱码之间的空格必须要有。 - 运行地址:即 Dalamud 根目录,比如我的是
D:\Code\Git\_Dalamud_\Dalamud\Dalamud\bin\Release\
(正是第一个参数的Dalamud.Injector.exe
所在的目录)
- 选择程序:请选择Dalamud根目录下的
-
如果这种方式比较复杂,也可以采取 国服启动器 的
Dalamud_CN_cli.exe
- 选择程序:请选择Dalamud根目录下的
Dalamud_CN_cli.exe
程序,比如我的就是D:\Code\Git\_Dalamud_\Dalamud\Dalamud\bin\Release\Dalamud_CN_cli.exe
- 运行参数:留空即可
- 运行地址:即
Dalamud_CN_cli.exe
所在目录,比如我的是D:\Code\Git\_Dalamud_\Dalamud\Dalamud\bin\Release\
(正是第一个参数的Dalamud_CN_cli.exe
所在的目录)
- 选择程序:请选择Dalamud根目录下的
-
填写完毕后一路OK,开游戏测试即可。
不支持多开,如果打开了多个客户端仍需要手动注入。
- 在开始菜单搜索或直接Win+R运行
-
占楼等一个中文系统的对应名词表()
-
Task Scheduler = 任务计划程序
Run with highest privileges = 使用最高权限运行
Trigger = 触发器
On an event = 发生事件时
【分别选择如下的几个事件类别&过滤条件】这里确实不用改
Edit query manually = 手动编辑查询
Actions = 操作
Start a program = 启动程序 -
要支持多开的话,可以用
Dalamud_CN_cli
1.1.0.2以上版本,编辑计划任务导出的xml,在<EventTrigger>
里面加上<ValueQueries> <Value name="PID">Event/EventData/Data[@Name="NewProcessId"]</Value> </ValueQueries>
就可以在启动参数里面填写
$(PID)
(原本是留空的)从而实现多开了 -
补个 启动进程记录功能 的图