Guest:
Register
|
Login
|
Member List
|
Search
|
Statistics
|
FAQ
Language
----------
Simplifed Chinese
Traditional Chinese
English
CnPack Forum
»
技术板块灌水区
» 很奇怪ActiveX控件调用事件问题,来电弹屏问题
‹‹ Last Thread
|
Next Thread ››
Poll
Trade
Reward
Activity
Printable Version
|
Email to Friend
|
Subscription
|
Favorites
Subject: 很奇怪ActiveX控件调用事件问题,来电弹屏问题
jxydhzw
普通灌水员
UID 3904
Digest Posts
1
Credits 64
Posts 19
点点分 64
Reading Access 10
Registered 2006-12-26
Status Offline
#1
Post at 2009-3-23 17:15
Profile
|
Blog
|
P.M.
很奇怪ActiveX控件调用事件问题,来电弹屏问题
不知道有朋友接触过此类事情
很奇怪ActiveX控件调用事件问题,来电弹屏问题
关于来电弹屏的。delphi开发环境 控件有Dev系列的,
首先介绍功能:
有一个ActiveX控件,里面封装了一个来电弹屏事件,即有电话呼入时,触发此事件,,该事件有二个参数,分别为CTI传入的主叫号码,与被叫号码
有一个方法getclient,数据库相关控件为ODAC的
查找客户,根据传入的电话号码查找客户,如果没有找到,则不进行任何操作,找到客户,如果有一个客户。就直接显示匹配的客户信息,如果有多个相似的客户。就将相似的客户显示在一个表格界面中,该表格界面是ShowModal模式,弹出该界面供客户选择。选择完之后,显示选择的客户信息。
现测试,如果在一个按纽当中。单独调用getclient,无论是找着多个客户,或者没找着客户。都没有问题。最主要是程序的主界面没有死掉。。
如果在ActiveX控件中的来电弹屏事件中,调用getclient方法,找着到多个客户时,发现问题如下:
1。显示的表格界面时,ShowModal模式无效,随便点击一个就不见了。
2。如果选择了某个客户资料,正常显示其资料后,此时,程序死掉了。鼠标点击没有反应。并且就显示没响应。我注意了一下CPU使用率。很正常才2%,这个问题比较重要。
3。有时。会出现“priviledged instruction”错误
4。我在调试状态下。发现运行一切正常。就是返回不到运行的界面。感觉好像失去了程序句柄一样。
我反复测试好几次,问题主要集中在ActiveX控件,因为此控件不是我方开发。是第三方的,电信提供的,好像是C++开发的,如果是我方getclient代码有问题,则在按纽事件中调用getclient测试,并无任何异常发生。尤其是不会造成程序假死,没有任何反应。而在ActiveX控件的来电弹屏事件中,调用。最主要是会造成程序假死,没反应,只要结束进程才能正常退出。
我不知道如何解决,现发贴请如果遇到过此类问题的朋友指点一下。如果没遇到的也没关系。注意一下。以后才知道如何避免。。
Rainstorey
普通灌水员
菜鸟
UID 977
Digest Posts 0
Credits 82
Posts 39
点点分 82
Reading Access 10
Registered 2005-8-8
Location 苏州
Status Offline
#2
Post at 2009-3-24 10:18
Profile
|
Blog
|
P.M.
个人认为可能是线程模型的问题.你可以尝试一下在ActiveX event中用PostMessage给Delphi的Form发送个自定义消息,然后在此消息中处理getclient.
[
本帖最后由 Rainstorey 于 2009-3-24 12:07 编辑
]
http://www.RainCoding.com/blog
jxydhzw
普通灌水员
UID 3904
Digest Posts
1
Credits 64
Posts 19
点点分 64
Reading Access 10
Registered 2006-12-26
Status Offline
#3
Post at 2009-4-1 16:50
Profile
|
Blog
|
P.M.
对的。楼上兄弟这方法好使。感谢
Poll
Trade
Reward
Activity
CnPack Forum
CnPack English Forum
> CnWizards IDE Wizards
> CVSTracNT
> Announcements & Others
All times are GMT++8, the time now is 2024-11-22 01:47
Powered by
Discuz!
5.0.0
© 2001-2006
Comsenz Inc.
Processed in 0.008366 second(s), 7 queries , Gzip enabled
TOP
Clear Cookies
-
Contact Us
-
CnPack Website
-
Archiver
-
WAP
Member's CP Home
Edit Profile
Credits Transaction
Public User Groups
Buddy List
Main
Page Views
User Agents
Posts History
Top Forums
Top Threads
Post Ranking
Credit Ranking
Online Time
Team
Moderation Stats