系统资源的问题.(88分)

  • 主题发起人 主题发起人 www1
  • 开始时间 开始时间
W

www1

Unregistered / Unconfirmed
GUEST, unregistred user!
我使用delphi4.0带的sendkeys,程序中只使用了一个button和一个
timer,在timer中用sendkeys向窗体发字符.可是运行时系统资源会在一个
小时内降到6%!!!如果屏蔽掉sendkeys,则一切恢复正常.请高手分析一下
sendkeys的源程序,是否有bug?另外,有系统资源的分析工具吗?我如何知道
自己的程序使用了那些系统资源?哪些没有free掉?谢谢.
 
用nt的任务管理器看看程序所占的内存大小,用Win9x的系统监视器看占用系统资源
可能是你的Timer的间隔设定的比较小,这样的话就会造成占用系统资源过多
有一个函数是把控制权交给系统,我不记得了:-(,可以试一试
 
你的timer间隔是多少?
 
我的timer时间设为1000,后来觉得短了,又改为3000。可是编译后还是“吃”资源。sendkeys的参数是: sendkeys('mystr',true),(true表示等待消息返回值
后再执行下面的代码)。论坛中有人说是因为用的是D版的delphi4。(用“系统资源”搜索)
 
sendkey源码我看过,没用过,会有此等怪事?
 
>>true表示等待消息返回值
你把字符send出去后,会不会没有及时得到回复,然后下一个timer就到了,结果
一个一个timer被......
你为什么要不停地发送固定的某个字符?
恕我直言,我猜你在试图Crack某个东西? :-)
 
cakk,大富翁里曾讨论过如何实现vb中的SENDKEYS函数。我的程序仅仅是为了实现自
动输入我的上网密码的功能。我倒是经常搜索注册码的。
今天我仔细看了DELPHI中的SENDKEYS源码,然后用keybd_event函数实现。
具体为:
1。获得virtualkey值。(函数:vkkeyscan)
2.获得scancode值。(函数:mapvirtualkey)
3.用keybd_event实现键的按下和弹起。
结果我的程序立刻恢复正常,系统资源不再自动减少了!至于你提到的我认为也是
有道理的。但是我自己并不是很清楚。如果有网友能详细说明其中的奥妙,请给我
写信,我会找机会给你分的。
此题的分数我这样分配,希望你们满意:cakk: 58 mikecool:20 sunstone:10
感谢你们三位的帮助!谢谢!
 
后退
顶部