仅在需要时运行Punkbuster服务
- 类别: 游戏类
如果您最近安装了使用反作弊软件Punkbuster限制游戏中在线作弊的游戏,则即使有支持它的游戏,您也可能已经注意到Windows Task Manager中运行的两个Punkbuster服务PnkBstrA.exe和PnkBstrB.exe。在该会话中尚未启动。
Punkbuster被安装为Windows启动时自动运行的两个Windows服务。即使它们保护的游戏没有在计算机系统上启动过一次,它们也将运行。
当游戏未运行时,这两个程序不会占用大量系统资源,但是很烦人,因为对于某些用户而言,不需要它们时便不会运行它们。
将服务的启动类型从自动更改为手动将阻止在系统启动期间加载它们。可以说问题已经解决了,但事实并非如此,因为那时两个服务将不会在游戏开始时启动。
这意味着您必须在启动游戏之前手动启动服务,这并不方便。
以下指南说明了如何将Punkbuster服务设置为手动,以便在系统启动期间不加载它们。还将进一步说明如何配置游戏以在游戏开始之前自动加载Punkbuster服务,以便在玩游戏时运行服务。
禁止在Windows中自动加载Punkbuster服务:
在Windows中打开“服务配置”菜单。您可以通过在Windows开始菜单中输入服务,然后从结果中选择“服务”或按Win-R,键入services.msc并按Enter键来实现。
在窗口中找到两个服务PnkBstrA和PnkBstrB。双击第一个Punkbuster服务组件,然后将“启动类型”从“自动”更改为“手动”。完成后,单击“停止”按钮以停止该服务在PC上运行。对第二个Punkbuster服务执行相同的操作。
现在,两个Punkbuster服务都已停止,并设置为手动启动类型。您可以在Windows任务管理器(Win-Shift-Esc)中验证服务是否不再运行。
创建批处理文件以在需要时启动服务并启动游戏
Punkbuster服务需要在游戏开始之前运行,这样您才能从用户计算机上需要Punkbuster的服务器上踢出去。批处理文件非常适合这种情况。
我们将创建一个基本的批处理文件,该文件将同时启动Punkbuster服务和游戏。 ( 请注意,您将需要使用具有管理特权的批处理脚本来启动服务 )。
创建一个新的文本文档。将以下三行粘贴到其中:
NET START'PnkBstrA'
NET START'PnkBstrB'
开始/ d'C: Program Files(x86) Electronic Arts Battlefield Bad Company 2'BFBC2Game.exe
前两行启动两个Punkbuster服务PnkBstrA和PnkBstrB。第三行启动实际的游戏,在此示例中为Battlefield Bad Company2。如果将游戏安装在其他目录或其他游戏中,请确保编辑该游戏的路径。
保存该文本文件,然后将其重命名为gamename.bat,例如badcompany2.bat。右键单击新的bat文件,然后选择以管理员身份运行它。批处理文件应启动两个Punkbuster服务,然后启动游戏。
快完成了令人讨厌的是,我们需要使用管理特权来运行批处理文件,唯一直接的方法是右键单击该文件,然后选择以管理员身份运行。
在Windows Vista和Windows 7中,可以始终以管理员身份运行程序和快捷方式。另一方面,无法以这种方式配置批处理文件。解决方案很简单。创建我们创建的批处理文件的快捷方式,将该快捷方式配置为始终以管理特权运行以解决该问题。
右键单击批处理文件,然后从菜单中选择“创建快捷方式”。这应该在同一目录中创建一个快捷方式文件。
现在,右键单击快捷方式文件,然后选择“属性”。单击快捷方式选项卡中的高级按钮。
选中该框以始终以管理员身份运行。
现在,您可以将快捷方式放在通常开始游戏的位置。
进一步的问题
这样可以解决Punkbuster服务始终运行的问题。与此相关的有两个问题。首先是两个服务在用户离开游戏后继续运行。比这更令人不安的是,其中一项服务PnkBstrB将被设置为再次自动运行。
半手动的解决方案是创建第二个批处理文件,以在使用Net STOP命令执行时停止服务。有经验的计算机用户甚至可能找到一种方法来为此处讨论的所有内容创建一个批处理文件。如果您愿意,请在评论中告诉我们。