我是新来使用UMDH,和我有一些麻烦了解如何与一些它输出的错误进行。我按照典型的使用(从MS网站):了解UMDH警告
gflags -i OCES.exe +ust
在另一个终端窗口:
OCES.exe
然后再回到原来的终端窗口:
umdh -p:5712 -f:out1.txt
但我从UMDH
Warning:
Warning: UMDH didn't find any allocations that have stacks collected.
Warning: Use gflags to enable allocation stack collection.
Warning: Restart the application for the setting to be in effect.
Warning: A 32bit GFLAGS must be used. The command is:
Warning: gflags -i OCES.exe +ust
Warning:
得到下列警告
当我对UMDH进行第二次调用时,出现同样的错误,当我使用UMDH来区分这两个快照时,我没有得到任何有用的输出(没有堆栈或回溯)。我在另一台电脑上使用了UMDH,并没有遇到这些相同的问题(另一台电脑不再供我使用)。
UMDH的安装是从“Windows调试工具”集合,我正在运行的WinXP专业版的32位版本,32位版本和我的软件是在C++中使用Visual Studio 2008
我对这些警告进行了搜索,没有发现任何有用的信息。任何帮助将非常感激。
看样子执行GFLAGS在同终端作为可执行似乎没有给警告(相反,从MS的例子,我经历了我以前的计算机上),但是,我得到同样的警告与我们主要的应用程序(不OCES.exe),返回控制终端(OCES.exe没有;它锁定端子)。因此,我“假设”,其影响GFLAGS可能有有限的范围内是否有更好的方式来处理GFLAGS一个应用程序所释放的控制回用法终端窗口? – 2010-10-20 18:01:05
'gflags'应该影响注册表。您可以检查是否它能使用'GFLAGS /我oces.exe'的转储的当前设置。使用'gflags'没有PARAMS和你建议立即进行删除d加载GUI版本,您可以检查并设置您的EXE标志。 – 2010-10-20 18:10:49
@Steve。我会试试这个。如果它不起作用,它可能是我们的主要应用程序,而不是UMDH。这是一个相当大的COTS产品代码库,所以可能会有gflags不满意的地方。我将尝试一些其他泄漏工具,如LeakDiag和DebugDiag。感谢您帮助我们更好地了解UMDH,史蒂夫。非常感激! – 2010-10-20 21:08:05