aspx中如何响应多线程atl控件发出的事件?

h13bk 2010-05-15 11:13:10
我用atl做了一个不可见的控件,用aspx在网页上调用。
atl的event参考微软的代码,改成用IConnectionPointImplMT实现了

aspx的网页用c#制作,先添加了atl控件的引用,然后创建控件对象:
protected TestATLLib.ATL1 m_atl1 = new TestATLLib.ATL1();

设置对象的响应事件:
m_atl1.OnStrEvent += new TestATLLib._IATL1Events_OnStrEventEventHandler(OnStringEvent);

protected void OnStringEvent(string str)
{
。。。
}

现在的运行结果是,如果atl控件在主线程中fire_xxxevent,aspx页面中能收到事件,但如果在atl中另外开一个线程触发事件,aspx中就收不到事件,在vs的调试窗口中可以看到下面的出错信息:
在 System.Web.HttpException 中第一次偶然出现的“System.Web.dll”类型的异常
在 System.Reflection.TargetInvocationException 中第一次偶然出现的“mscorlib.dll”类型的异常

请问现在是atl的问题还是aspx的问题?怎样修改?
...全文
69 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cloudfoger 2010-06-30
  • 打赏
  • 举报
回复
没人回答马甲接分了
h13bk 2010-05-29
  • 打赏
  • 举报
回复
顶一下,人呢?
h13bk 2010-05-18
  • 打赏
  • 举报
回复
自己顶一下,不知道大家在c#中接受这种自己开发的服务器端控件发出来的事件通知用什么方法?我又做了测试,将atl端的控件事件不用多线程实现,在aspx端新建线程来等待事件,不知为何居然也等不到?
h13bk 2010-05-17
  • 打赏
  • 举报
回复
参照网上一个mfc控件的做法,将我的父类声明上添加了CWindowImpl,另一个线程给我的主线程发消息然后出发事件,居然也是一样的结果,可以看到事件确实被触发了,调试窗口能在每次事件触发时显示错误信息,就是aspx网页收不到,是不是c#那里接收的方法不对?
新颖网络上传插件(StorageWebPlug)是一个支持超大文件(2GB,可扩展)上传的COM控件, 具备断点续传,文件MD5验证,大大提高上传效率、节省带宽,有详细的上传进度显示,支持多种脚本语言,欢迎下载体验。免费提供JavaScript SDK包。 产品特点: 1、文件上传使用增强的FTP协议,用户使用浏览器就可以上传超大文件到服务器(支持上传超过1G的文件)。 2、支持断点续传,系统智能续传未上传的文件,续传操作更简单,更方便,更快捷。 3、支持文件批量上传, 一次可以上传多个文件. 上传时有详细的状态显示(包括单个文件进度,整体进度,传输速率,剩余时间等)。 4、新颖网络免费提供JavaScript SDK包。通过新颖网络提供的封装好的JavaScript类库用户可以快速的与现有系统整合。 5、StorageWebPlug提供完善的接口和帮助文档,开发文档。开发人员可以动态设置上传保存路径, 设置允许扩展名, 允许最大大小等,可自定义强。 6、支持各种代理(HTTP, Socket4, Socket5等)。 7、组件采用多线程机制来保证上传效率。 8、支持批量文件上传, 用户可以一次性上传批量文件. 客户端可以绑定HTML表单变量, 服务端并可以接收表单变量 9、服务端文件保存路径可以随意指定,服务端文件保存路径可以灵活变化。保存路径支持网络路径。 10、为提高安全性,服务端组件可以指定用户权限 11、可以限制上传单个文件大小, 控制上传带宽上限, 允许文件扩展名, 拒绝文件扩展名等 12、上传数据时会根据网络状况来控制数据包大小, 避免网络堵塞 13、控件采用ATL编写, cab包只有59KB, 用56k的modem下载不会超过12秒 14、服务端支持Windows 2000 Server/Windows 2003 Server/Windows NT/Windows XP/Unix/Linux等操作系统 15、通过新颖网络业界领先的设计水平打造的操作界面可以帮助您的系统和产品获得更高的品质。 产品介绍:http://www.ncmem.com/service_storagewebplug.aspx 下载地址:http://www.ncmem.com/download.aspx

28,408

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧