各位大侠,救命啊.要不要被炒鱿鱼了.(200分)

  • 主题发起人 主题发起人 superpage
  • 开始时间 开始时间
S

superpage

Unregistered / Unconfirmed
GUEST, unregistred user!
各位好,我在win2000下开发了一套程序,运行正常稳定.但该程序到win98下时经常出现
"Invalid floating point operation"的异常现象.烦哪位大侠告诉我是怎么回事,又是什么引起的
怎么样才能解决呢?
谢谢了.
 
在98下重新编译试试。
一般是数据运算的时候出现错误对吧?
具体原因不详。
 
你用BoundChecker看一下兼容性吧
 
嘿嘿,程序里面别用currency
 
數據類型出錯啊!
 
我遇到过类似情况,比如在stringgrid中如果取某一CELLS的值,当其为空时,如果进行
strtofloat转换,就.....。
 
你可能用了不兼容的api
 
好好查一下程序 看可那那里用到跟Float Point有关的东东,发现问题的办法
在win98下测试,用ShowMessage等调式手段 缩定出现该错误的模块的名称和程序出现错误的位置,另外还有可能是其他的
第三方控件的兼容性问题哟。
 
api 函数问题
 
同意lcy1006,数据转换时出错,可用try except end 屏蔽出错的地方
 
确实是数据类型出错了,原来用的是integer但因为不够用所以改成single了,都是4位的,怎么就不对呢?
而在win2000下没有问题啊.
 
而且该异常现象也不是有规律出现的,而是随即出现的.咋办啊.
 
integer数据类型的保留就是为了兼容以前版本的,一个是整型数,一个是实型数,在数据
的转换上会有很多不同问题的
 
浮点型操作错误
 
你是用ADO的吧?
升级一下你的ADO吧。在微软的
http://download.microsoft.com下找mdac,下2.6的就可以了。
 
类型错了 将两个不同的类型参加计算就会出错的
 
如果你是在编绎时就把字段编绎为字段对象了,请在你的DATASET将字段删除再重新加入,
如果你用的是VALUE方法,请改用ASFloat or asinteger,如果在2000下不出错,请在98下
重新build,再解决不了,就是你的问题了,请用try except end应付吧
 
如果我将该程序放到98下编译后,生成的可执行文件能不能解决这个问题?
 
应该在Win98下编译一下 应该能抱错。。。再看看抱的什么错
 
你的工程中是不是用了DBGridEh控件?
如果是,恭喜你,这是这个控件的BUG,
我以前也遇上过这个错误,方法是找最新
版本的DBGridEh
 
后退
顶部