Vb 6 使 .exe 对调试器产生不同的结果 [英] Vb 6 Make .exe different results to debugger

查看:31
本文介绍了Vb 6 使 .exe 对调试器产生不同的结果的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在比较使用Make .exe"时产生的结果与使用完全相同的变量通过 IDE vb 6 调试器运行完全相同的进程时产生的结果.

我尝试了一系列不同的编译器选项,但无济于事.

所以我的问题是为什么我会在调试器和Make .exe"之间有所不同?你有没有遇到过类似的事情,如果有,你有没有找到解决办法?

该程序获取一个时间段内汽车数量的大文件,并将它们平均为每个路线一个月内一天的 15 分钟时间段.它根据是否有超出标准偏差和其他统计算法来消除某些记录来消除值.不幸的是,它的代码太多了......

解决方案

Debug.AssertDebug.Print 语句未编译到二进制文件中.我有时会用它来检测我是在 IDE 中还是在编译后的二进制文件中:

<前>出错时继续下一步调试.打印 1/0如果 Err=0 那么'编译后的二进制文件别的'在IDE中万一

小心这样的陈述:

Debug.Assert( DoSomeThingImportend() )

在编译版本中不会执行此语句.

I'm comparing the results produced when i use the 'Make .exe' compared to when i run the exact same process using the exact same variables though the IDE vb 6 debugger.

I've tried an array of different compiler options but to no avail.

So my question is why would i get a difference between the debugger and the 'Make .exe'? have you ever come arross something similar and if so did you find a fix?

the program takes a large file of counts of cars in a timeperiod and averages them into 15 minute timeperiods for the day over a month for each route. It elminates certain records depending on if there outside the standard deviation and other statistical algorithms To eliminate values. its a bit to much code to post unfortunately...

解决方案

Debug.Assert and Debug.Print Statement are not compiled into the binary. I sometimes use this to detect whether I am in the IDE or a compiled binary:

On Error Resume Next
Debug.Print 1/0
If Err=0 then
  'Compiled Binary
else
  'in the IDE
End if

Be careful with statements like this:

Debug.Assert( DoSomeThingImportend() )

In the compiled version this statement will not be executed.

这篇关于Vb 6 使 .exe 对调试器产生不同的结果的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆