|
|
可以在进桌面之前挂载 VHDX,也能把挂载优先级提到最高;核心是用任务计划程序 + 系统启动时触发 + 最高权限 + 无延迟,比登录后、启动文件夹、RunOnce 都更早。
一、最高优先级方案(进桌面前挂载)
1. 准备挂载脚本(PowerShell)
新建文本,另存为 MountVHDX.ps1(路径如 C:\Scripts\MountVHDX.ps1),内容:
- # 挂载VHDX并指定盘符(替换为你的路径与盘符)
- Mount-DiskImage -ImagePath "D:\Data\MyDisk.vhdx" -PassThru |
- Get-Disk |
- Get-Partition |
- Set-Partition -NewDriveLetter X
复制代码- Add-PartitionAccessPath -AccessPath "C:\Mount\VHDX"
复制代码 2. 任务计划程序(最高优先级配置)- 以管理员打开 taskschd.msc → 右侧「创建任务」。
- 常规:
- 名称:AutoMount VHDX (Boot)
- 勾选「使用最高权限运行」
- 安全选项:「不管用户是否登录都要运行」→ 不保存密码。
- 触发器:
- 新建 → 开始任务:「启动时」
- 延迟:0 秒(优先级最高)
- 勾选「已启用」。
- 操作:
- 新建 → 操作:「启动程序」
- 程序 / 脚本:powershell.exe
- 添加参数:
- -WindowStyle Hidden -ExecutionPolicy Bypass -File "C:\Scripts\MountVHDX.ps1"
复制代码
- 条件 / 设置:
- 条件:取消所有勾选(如网络、电源)。
- 设置:取消「如果任务运行时间超过以下时间,停止任务」;勾选「如果此任务已经运行,请勿启动新实例」。
- 确定 → 输入管理员密码。
二、更早挂载:系统服务级(可选)
用 sc 创建系统服务,在服务管理器阶段(比任务计划「启动时」更早)执行挂载:
- @echo off
- powershell -WindowStyle Hidden -ExecutionPolicy Bypass -File "C:\Scripts\MountVHDX.ps1"
复制代码- start= boot 表示系统引导阶段启动,优先级最高。
2.管理员 CMD 执行(创建服务):
- sc create MountVHDXService binPath= "C:\Scripts\MountVHDX.bat" start= boot
- sc config MountVHDXService type= own
- sc start MountVHDXService
复制代码
|
|