DCOM高手请进,我只能给这点分了
我在调一个程序,程序启动后放入托盘区,程序中调用了一个服务器端的DCOM接口(DCOM是由VC++实现),定时通过接口函数从服务器中取得数据(有3个定时器),程序工作正常。当我执行以下代码时,接口中的函数会产生异常,程序代码及异常代码如下:
//该段代码功能,按下鼠标左键显示主窗体,右键弹出菜单选择命令(如about,exit)
procedure Tfrmnet.IconOnClick;
var
p : TPoint;
begin
if (message.lParam = WM_LBUTTONDOWN) then
ShowWindow( Application.Handle, SW_SHOW ); //正常
if (message.lParam = WM_RBUTTONDOWN) then
begin
GetCursorPos( p );
netpop.Popup( p.x ,p.y ); //执行该语句后出现异常
//netpop为TPopupMenu类声明点的对象
end;
end;
//异常窗口提示内容
project netgis.exe raise exception class EOleException with message
"因为应用程序正在发送某个输入同步调用,所以无法创建某个同步调用."
process stopped. Use step or Run to continue.
出现异常后,系统会停在定时器中某个接口函数的调用上,难道弹出菜单会影响DCOM接口调用?
哪位能帮帮我,不胜感激,在这里先谢过了。