代码地址在VS2015中发生变化

时间:2016-09-28 22:28:18

标签: visual-studio-2015 disassembly

我的问题与VS2015在反汇编中显示的代码地址有关 断开调试器时的选项卡。

地址在运行之间发生变化,并且没有进行任何代码更改 这将触发任何编译/链接。

他们并不总是在跑步之间改变,但它只花了我一分钟或 两个产生这个例子的地方有变化。

  1. 我在几乎立即调用的区域设置了一个断点

  2. 开始调试(F5)

  3. 断点点击

  4. 单击“反汇编”选项卡并进行屏幕截图(PrtScn)

        163:                ret = functionName (param1, param2, param3, param4);
    006B9A41    mov     eax,dword ptr [param4 (1330214h)]
    006B9A46    push    eax
    006B9A47    mov     ecx,dword ptr [param3]
    006B9A4A    push    ecx
    006B9A4B    mov     edx,dword ptr [param2]
    006B9A4E    push    edx
    006B9A4F    mov     eax,dword ptr [param1]
    006B9A52    push    eax
    006B9A53    call    functionName (6B9CF0h)
    ...
    
  5. 点击停止调试

  6. 开始调试(F5)

  7. 断点点击

  8. 单击“反汇编”选项卡

        163:                ret = functionName (param1, param2, param3, param4);
    01729A41    mov     eax,dword ptr [param4 (23A0214h)]
    01729A46    push    eax
    01729A47    mov     ecx,dword ptr [param3]
    01729A4A    push    ecx
    01729A4B    mov     edx,dword ptr [param2]
    01729A4E    push    edx
    01729A4F    mov     eax,dword ptr [param1]
    01729A52    push    eax
    01729A53    call    functionName (1729CF0h)
    ...
    
  9. 请注意,所有地址中的高位字都已更改。

    这两个Disassembly片段之间几乎是几秒钟

    我们最近从VS2005切换到了VS2015,这个 DID NOT 发生在VS2005 !!!

    非常喜欢知道如何阻止它并让它像VS2005一样工作,我们 有一个电子邮件崩溃报告系统,包括调用堆栈,这是无用的 找到崩溃发生的地方,因为地址随意改变!!!

    使用: Microsoft Visual Studio Professional 2015 版本14.0.25425.01更新3

    请帮忙!

    谢谢

0 个答案:

没有答案