Lazarus中文社区

 找回密码
 立即注册(注册审核可向QQ群索取)

QQ登录

只需一步,快速开始

Lazarus IDE and 组件 下载地址版权申明
查看: 8883|回复: 17

很奇怪的问题,请教大家

[复制链接]

该用户从未签到

发表于 2009-10-15 08:07:43 | 显示全部楼层 |阅读模式
在真机上,运行Lazarus编写的程序,

如果打开短信、再关闭,然后拨叫电话,这时CPU100%,程序就会死掉或者被强制退出,大家遇到过这种情况吗?

同样的程序用C++写的就没有这个问题,会不会是FPC编译器的问题?
回复

使用道具 举报

该用户从未签到

发表于 2009-10-15 09:46:08 | 显示全部楼层
你lazarus编写的什么程序?在你程序里做了什么操作后出的问题?
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2009-10-15 11:16:30 | 显示全部楼层
后台监视电源的变化,但是我新建一个工程,只有窗体,不做任何别的工作也是这样
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-10-15 13:01:28 | 显示全部楼层
你用你写的程序去打开短信、再关闭,然后拨叫电话,这时CPU100%,程序就会死掉或者被强制退出?
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2009-10-16 07:32:11 | 显示全部楼层
不是用程序调用,都是手动正常操作,程序就是一个空程序也会死掉
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-10-16 15:46:10 | 显示全部楼层
查到一条资料:
管理低内存状态

微软建议PPC程序不设不设关闭按纽,当系统需要额外内存是自动关闭它们。WinCE添加了WM_HIBERNATE消息,当内存很少时发送到应用程序,要求程序释放内存。测绘软件应该响应此消息,保留有用数据,提示用户进行必要的处理等。
--------------
会不会是lz需要手工处理 WM_HIBERNATE 消息 的原因?
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2009-10-19 08:26:13 | 显示全部楼层
谢谢楼上的。
我没有处理任何消息,只是单纯的新建一个工程、编译,然后拷到手机上就会出现这种情况,而在模拟器中运行却完全正常。

不知道是个案还是通病,所以想请大家帮忙实验一下。
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-10-19 09:54:48 | 显示全部楼层
上源代码,这么说说不清
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2009-10-19 10:44:29 | 显示全部楼层
源代码?
新建工程的源代码不是都一样吗?

“只是单纯的新建一个工程、编译,然后拷到手机上”
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-10-19 16:55:53 | 显示全部楼层
evc 是微软自家的,WM_HIBERNATE可能程序内部就处理掉了。
laz就要编程者自己来处理这个消息,释放资源或关闭程序,否则会直接关闭掉。
建议楼主,在空程序里面手写这个处理方法,再试验下~
俺手头没有真机,要不我就自己试试了.
以上纯属推测,没有找到实际的根据,只能以试验结果为准。
回复 支持 反对

使用道具 举报

*滑块验证:

本版积分规则

QQ|手机版|小黑屋|Lazarus中国|Lazarus中文社区 ( 鄂ICP备16006501号-1 )

GMT+8, 2025-12-12 17:19 , Processed in 0.034798 second(s), 9 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表