关于程序出现 “因为应用程序正在发送一个输入同步呼叫,所以无法执行传出的呼叫”

最近在开发中碰到一个问题,

调用

_di_XMLDocument doc = NewXMLDocument();

这段代码的时,程序报异常“因为应用程序正在发送一个输入同步呼叫,所以无法执行传出的呼叫”

查了CSDN 和 StackOverflow 他们碰到的问题,大多是由于SendMessage 和 COM 2个组件。(原理目前不清楚)

受此启发,发现,我的doc对象,是在一个 键盘钩子的回调函数中执行的。

目测,这个键盘钩子的回调函数,在等待一个SendMessage的返回。

解决办法是。当捕获到键盘钩子之后,PostMessage 一个自定义消息给一个窗体(我是Post给主窗体了)。让键盘钩子赶紧返回。

然后主窗体收到消息之后,执行键盘钩子的逻辑部分。

之前是这样写的:

//键盘钩子回调

void CALLBACK HOOK(wParam,lparam)

{

//逻辑过程

}

修改为

void CALLBACK HOOK(wParam,lparam)

{

//逻辑过程

PostMessage(Handle, WM_USER+100, 参数1,参数2);

}

然后主窗体收到消息时处理

void OnMessage(TMessage& msg)

{

if (msg.msg == WM_USER+100)

{

//逻辑过程

}

}

时间: 2024-10-21 03:18:21

关于程序出现 “因为应用程序正在发送一个输入同步呼叫,所以无法执行传出的呼叫”的相关文章

微信小程序-整理各种小程序源码和资料免费下载

微信小程序整理下载 [小程序源码]微信小程序-车源宝微信版 [小程序源码]小程序-微赞社区(论坛demo) [小程序源码]微信小程序-收支账单 [小程序工具]微信小程序-日历 [小程序源码]小程序-在线聊天功能 [小程序源码]微信小程序-大好商城(新增功能天气查询和2048游戏) [小程序源码]微信小程序-查询号码归属地 [小程序源码]微信小程序-备忘录2 [小程序源码]微信小程序-QQ音乐 [小程序源码]小程序-货币汇率 [小程序源码]微信小程序-大学图书馆 [小程序源码]小程序-积分商城 [

linux下java程序与C语言程序通过SOCKET通信的简单例子

linux下java程序与C语言程序通过SOCKET通信的简单例子 今天上午实验了java程序与c语言程序通过socket进行通信.由于没学过java,因此只是编写了C语言端的代码,java端的代码是从网上别的文章中找的,经过少量修改后与C语言端程序通信成功. 本例中C语言端作为服务器,java端作为客户端 代码如下: /****************** server program *****************/ #include <stdio.h> #include <sy

微信小程序怎么开发(小程序开发文档)

微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验. 2017年1月9日~2018年1月9日,小程序正式上线一周年.上线以来,小程序不断地释放新能力,迭代更新,一年来已发布近50多次新能力.小程序开启了互联网创业3.0时代,微信庞大的流量与平台能力,也在不断地赋能于小程序. 本文档将带你一步步创建完成一个微信小程序,并可以在手机上体验该小程序的实际效果.这个小程序的首页将会显示欢迎语以及当前用户的微信头像,点击头像,可以在新开的页面中查看当前小程

五年java开发生涯中一次吐血的项目救火(程序员何苦难为程序员)

我现在就职于一家中型的互联网企业,去年年底入职的薪资和待遇都很不错,但是总结起来说的好听就是全村人的希望,说的不好听就是一个人几乎干了一个项目组的事.下面是我的一次项目救火经历(背锅经历).就是年后的一个合作公司上线了一个子业务系统,对接公司内部的单点系统.我收到该公司的技术咨询:项目启动后没有规律的突然无法登录了,重新启动后,登录一断时间后又无法重新登录,对方技术人员一头雾水不知道什么原因,后台日志没有任何错误信息.我临危受命,赶往该项目进行扑火工作,其实本来2天都可以解决的问题,让我花了5天

1014 C语言文法定义与C程序的推导过程 程序:冒泡算法C程序(语法树)

1014 C语言文法定义与C程序的推导过程  程序:冒泡算法C程序(语法树)1 阅读并理解提供给大家的C语言文法文件. 2 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 3 给出一段C程序,画出用上述文法产生这段C程序的完整语法树. 程序:冒泡算法C程序 点此文字查看原图(完整图片) 1 #include <stdio.h> 2 3 main() 4 { 5 int i,j,temp; 6 int a[10]; 7 8 for(i=0;i<10;i++) 9 scanf

解决Pyqt打包后运行报错:应用程序无法启动 因为程序的并行配置不正确

做了一个生成二维码的小程序:http://www.cnblogs.com/dcb3688/p/4241048.html 直接运行脚本没问题,用pyinstaller打包后再运行就直接报错了: 应用程序无法启动 因为程序的并行配置不正确.有关详细信息,请参阅应用程序事件日志,或使用命令行 sxstrace.exe 工具. 网上找的解决方法: 1.   安装Microsoft Visual C++ 2008 Redistributable 2.  开始 - 运行(输入services.msc)- 确

程序员生存定律--程序人生的出口

程序员的人生出口 很多人非常想知道自己的未来是什么样子的,迫切到一定程度甚至会找算命先生.如果并不是想得到一个精确结果,这事儿其实并没有想的那么难.程序员的人生看起来五花八门,可以是Windows系,可以是Android系,可以是iPhone系等等,但如果为之做点抽象,那就会发现人生出口的类别其实不多,接下来我们就结合例子来看看程序员的人生中最可能的几个出口.这些出口里有大部分人的未来景象. 1 成就超一流高手 袁峰先生是<Windows图形编程>一书的作者,也是一位纯粹的程序员.从袁峰先生公

托管程序与非托管程序的区别

介绍托管程序与非托管程序的区别 本文主要介绍托管程序与非托管程序的概念,以及两者之间的区别.希望对你有帮助,一起来看. AD:[线下活动]三大新锐HTML 5企业汇聚51CTO—大话移动前端技术 托管代码是一microsoft的中间语言,他主要的作用是在.NET FRAMEWORK的CLR执行代码前去编译源代码,也就是说托管代码充当着翻译的作用.下面介绍托管代码和非托管代码. 什么是托管代码? 托管代码就是Visual Basic .NET和C#编译器编译出来的代码.编译器把代码编译成中间语言(

微信小程序_微信小程序开发,小程序源码、案例、教程

原文地址:http://whosmall.com/?post=448 本文标签: 微信小程序 小程序源码案例 小程序项目 小程序源码 微信小程序教程 什么是微信小程序? 微信小程序是微信基于微信平台的一个应用发布平台,微信小程序app开发属于原生app组件提供js接口的开发方式,比混合是app的用户体验更好,仅次于原生应用. 不过微信小程序定位于小,要符合轻量易用无需下载,所以从体积上也是有限制,整个小程序应用体积不能超过1M. 微信小程序的应用场景? 微信小程序的应用场景适用于轻量应用,非强交