首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在批处理脚本中使用VMMap

在批处理脚本中使用VMMap
EN

Stack Overflow用户
提问于 2013-03-22 21:21:06
回答 2查看 1.4K关注 0票数 0

我正在对我工作的地方运行的一些软件做一些分析工作。这款软件似乎存在内存问题,事实证明,这些问题很难被追踪到。我们决定使用Sysinternals来跟踪软件所使用的内存。

我们让VMMap每隔20秒导出一次使用情况,使用Windows计划程序启动一个批处理脚本,该脚本拉回目标进程PID并使用它启动VMMap。该进程运行了一段时间,输出显示在out目录中,但过了一段时间就停止了。Windows调度程序报告作业运行正常,并将在触发时启动另一个实例,再次没有输出。

经过一些调查后,看起来VMMap无法打开该进程,并试图通过其图形用户界面报告错误。因为我们是批量运行的,所以我们不能看到这个错误而忽略它。这导致了许多进程被衍生出来,但实际上并没有做任何事情。

有没有人在使用VMMap时遇到这个问题,或者知道任何可能有帮助的东西?我在想,也许我可以传递一些标志来抑制消息,或者也许我可以通过某种方式在批处理中处理它,但Google没有帮助,Sysinternals论坛也没有帮助。任何帮助都将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-24 15:30:11

VMMap是一个图形用户界面工具,所以尝试以自动化的方式捕获它的输出将是困难的。相反,可以尝试使用另一个SysInternals工具Handle,它捕获了许多相同的信息,但是在命令行导出/报告它,在命令行中捕获它要容易得多。或者,在使用VMMap时,不要以自动重复的方式运行输出,而是让脚本以某种方式检测错误或缺少预期的结果/数据,然后停止,以便可以检查图形用户界面输出。

票数 0
EN

Stack Overflow用户

发布于 2013-03-24 17:53:54

所有Sysinternals工具在第一次在新机器上启动时都会弹出同意对话框,以接受其许可证。我认为您确实将该工具部署到了一台生产机器上,它试图显示同意对话框,但没有人按下ok。

他们基本上在机器上创建了一个注册表项,如果你需要一个完全自动化的部署,你可以伪造它,或者你可以在目标机器上为有问题的用户启动一次。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15571411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档