在编完一个程序后,在VB6里运行后得到一个结果。然后make ***.exe发现,运行***.exe的结果与原来的结果不一样,是什么原因?很苦恼!!
已经通过msgbox的方式追踪结果,没有发现变量重复声明或覆盖的现象。 

解决方案 »

  1.   

    1)EXE文件运行环境与VB编译集成环境不一致。
    2)尽量少用全局变量。尽量不用变体变量。
      

  2.   

    非常感谢大家的帮助,谢谢!
    今天试了一下,编译为p代码就可以解决问题,但不知道这与编译为本地代码相比的区别是什么? 
    另外,在编译为本地代码时,只要不选择opitimize for fast code,就没有问题,但一旦选了,就会出现问题(做成.exe的结果与.vbp的运行结果不一样)。 
    在用msgbox跟踪的时候,发现要计算的代数式,如A=B*C,B和c的都没错,在.vbp运行时的A也正确,但是一旦做成.exe运行后,就发现B和C正确,但A就是不正确。 
    再次感谢大家。 
      

  3.   

    首先确定VS的补丁打了没有,至少打到SP5.
    其次检查是否有定义浮点型变量,仔细去检查浮点型变量的运算部分
    如果对性能要求不是太高或者有大量的运算没必要选择opitimize for fast code