C++ 可视泄漏检测器(VLD)显示空调用堆栈

C++ 可视泄漏检测器(VLD)显示空调用堆栈,c++,visual-c++,memory-leaks,visual-leak-detector,C++,Visual C++,Memory Leaks,Visual Leak Detector,我用的是可视检漏仪。它正确地显示了一些泄漏的调用堆栈,但我得到的一些输出显示调用堆栈为空,如下所示: ---------- Block 131148 at 0x69B3AF68: 144 bytes ---------- Leak Hash: 0xCA7D251C, Count: 1, Total 144 bytes Call Stack (TID 1600): Data: B8 0A 80 01 01 00 00 00 7F 7D 00 00 00 00

我用的是可视检漏仪。它正确地显示了一些泄漏的调用堆栈,但我得到的一些输出显示调用堆栈为空,如下所示:

---------- Block 131148 at 0x69B3AF68: 144 bytes ----------
  Leak Hash: 0xCA7D251C, Count: 1, Total 144 bytes
  Call Stack (TID 1600):
  Data:
    B8 0A 80 01    01 00 00 00    7F 7D 00 00    00 00 00 00     ........ .}......
    00 00 00 00    A4 81 1A 00    17 00 00 00    A8 AE EA 4E     ........ .......N
    40 EE 22 53    00 00 70 42    FB 19 CC BD    D4 E7 2E 00     @."S..pB ........
    CD CD CD CD    80 2D FB 6E    A0 4A B2 69    20 8D 00 54     .....-.n .J.i...T
    D8 6B 6A 54    00 CD CD CD    38 DB 81 01    40 EE 22 53     .kjT.... 8...@."S
    CD CD CD CD    CD CD CD CD    B0 AF B3 69    CD CD CD CD     ........ ...i....
    60 DB 81 01    40 EE 22 53    E8 03 00 00    CD CD CD CD     `...@."S ........
    C8 AF B3 69    CD CD CD CD    CD CD CD CD    CD CD CD CD     ...i.... ........
    CD CD CD CD    CD CD CD CD    00 00 00 00    CD CD CD CD     ........ ........
我不知道如何跟踪这样的问题


任何帮助都将不胜感激。

您应该尝试在
vld.ini
中将输出格式从
ascii
更改为
unicode

堆栈信息必须具有无法转换为
ascii
unicode
字符

如果VLD是在debug中编译的,这将导致断言

请参见VLD网站上的相关主题:


我在评论中发布了更改vld.ini的替代方案(需要修改vld源代码并重新编译)。

vld.ini
中将
ascii
更改为
unicode
,对我不起作用


但是,将我的项目从包含unicode字符的目录移动到不包含unicode字符的目录,vld会显示调用堆栈。

使用vld.ini的输出格式是什么?ascii还是unicode?尝试更改它(如果unicode改为ascii或其他方法失败),将不会显示任何输出。这似乎解决了问题,原来是ascii,我改为unicode,现在它显示所有带有调用堆栈的输出。感谢您的回复,请接受“关闭”主题。