还发布在:http: //forum.sysinternals.com/problem-launching-procdump-from-a-64bit-service_topic27425.html
我们可能会在客户站点使用相同的可执行文件运行多个服务。我们在我们的程序“启用procdump”中添加了一个设置,并指示客户下载procdump并将其放在我们的bin目录中。
如果设置为 on,我们会在服务启动时启动 procdump(指定进程 ID)。
问题是:当作为“本地服务”或“本地系统”运行时,procdump 不适用于我们的 64 位服务器。当以具有管理员权限的域用户身份运行时,它工作正常。如果我们从命令提示符手动启动它,它也可以正常工作。看起来当我们手动运行它时,我看到在任务管理器中创建了两个 procdump 进程:procdump *32 和 procdump64
当我们的 64 位服务作为“本地服务”或“本地系统”运行并启动 procdump 时,只显示 procdump*32。我假设它应该启动 procdump64 的方式失败了。 它也无法创建转储,并且如果我 taskkill 服务(通常它退出)则无法终止。
关于为什么会这样的任何想法,或者我是否可以做些什么?运行 procdump 的帐户是否需要一些权限?