关于配置任务计划程序使启动进程在任务管理器中可见的问询
如何配置任务计划程序,让它启动的进程在任务管理器中可见?
我正在使用Windows 10,有一个存储在.bat文件中的脚本用来启动某个进程。如果直接双击运行这个脚本,进程会在任务管理器中显示;但如果通过任务计划程序启动这个脚本,进程确实在运行(用
tasklist命令能查到),但就是在任务管理器里看不到。问题:有没有办法配置任务计划程序,让启动的进程能在任务管理器中显示?
哈哈,这个问题我之前帮朋友排查过,其实是任务计划程序的会话隔离在搞鬼!默认情况下,任务计划会把进程启动在后台会话0里,而我们平时登录系统用的是用户会话(一般是会话1及以后),任务管理器默认只展示当前用户会话的进程,所以你用tasklist能查到,但任务管理器里看不到。
你可以按照下面的步骤调整任务计划的设置,让进程跑到你的用户会话里:
- 打开任务计划程序,找到你的目标任务,右键选择「属性」
- 切换到「常规」标签页:
- 在「安全选项」区域,选择你当前正在使用的用户账户(别选「本地系统账户」这类系统级账户,它们的进程默认在会话0)
- 如果你只希望自己登录时进程可见,就选「只有在用户登录时运行」;要是不管登不登录都要能在任务管理器找到,就选「不管用户是否登录都要运行」,注意这时候不要勾选「不要存储密码」,否则可能会有权限异常
- 最下方的「配置为」一定要选「Windows 10」,选旧版本系统会有会话兼容问题
- 切换到「操作」标签页,编辑你启动脚本的操作:
- 确保「程序或脚本」正确指向你的.bat文件,「起始于」字段填上脚本所在的文件夹路径,避免因为路径找不到文件导致的隐式异常
- (可选)如果还是不行,试试把启动.bat改成启动
cmd.exe,参数填/c "你的完整脚本路径",比如/c "C:\my_scripts\start_process.bat",这种方式有时候能绕开批处理的会话隔离限制
调整完之后重新运行任务,你打开任务管理器,不管是「进程」标签还是「详细信息」标签,都应该能看到这个进程了。如果还是不确定,你可以在「详细信息」标签里点击「会话ID」列排序,调整后的进程会话ID应该和你当前用户的会话ID一致,而不是0。
备注:内容来源于stack exchange,提问作者user120513
相关产品推荐
相关产品推荐

