我用的是win7 Pro 32bit。我有 ac:\record.bat 文件。这个 bat 文件运行带有一些参数的 ffmpeg.exe 来捕获桌面屏幕并保存到视频 .mp4 文件。
当我使用管理员帐户登录时,它运行良好。任务管理器显示 ffmpeg.exe 正在使用管理员帐户运行。我可以突然杀死 ffmpeg 进程。这太正常了。
当我使用用户帐户登录时,我也可以运行它并且运行良好。任务管理器显示 ffmpeg.exe 正在使用用户帐户运行。我也能杀。这也太正常了。
现在,当仍在用户会话中时,我想以管理员权限运行 record.bat 文件,以让用户无法终止该进程。所以我做了一个测试,我打开 CMD ,然后使用 runas 命令:
runas /user:administrator c:\record.bat
它提示输入管理员密码,我输入密码并且效果很好。我可以看到使用管理员帐户运行的 ffmpeg.exe 进程。
但是,现在我也可以杀死那个进程了!!!虽然我现在是用户并且 ffmpeg.exe 进程在管理员权限下运行。这很奇怪,因为在 WinXP SP3 上,使用相同的测试架构,用户帐户无法杀死该进程(在管理员帐户下运行)。
你能告诉我如何解决这个问题吗?目标是我希望在用户会话中运行该批处理文件以捕获他们的屏幕,但他们无法终止该进程。我在winXP上成功地做到了这一点。但是在Win7上这失败了。
希望各位亲可以帮帮我。
谢谢。