请教:如何ActiveX添加自定义事件?
1. 服务器收到数据包,通过Socket将数据包发给ActiveX
2. ActiveX收到数据包,触发自定义事件,将数据包发送给网页的JavaScript
3. JavaScript更新页面上的内容
这个自定义事件在Delphi里如何实现?刚才上网查了一些资料,都没有详细说明这个步骤,还望各位DX指点一下。
目前我只知道:Type Library --> New Method,接下去的步骤就搞不懂了。
//以下这段是Socket客户端接收消息
procedure TafxSck.OnSocketRead(var message: TMessage);
var
pHeadBuf, pBodyBuf: PChar;
iHeadLen, iBodyLen: Integer;
myPack: PMyPack;
sMsg: string;
iRet: Integer;
begin
iHeadLen := SizeOf(TMyPack);
case WSAGETSELECTEVENT(message.lParam) of
FD_READ: //Socket有数据需要读取
begin
GetMem(pHeadBuf, iHeadLen);
iRet := Recv(xl_socket, pHeadBuf^, iHeadLen, 0); //读取包头
if iRet = SOCKET_ERROR then
begin
systemLog('Read Error!');
Exit;
end
else
begin
myPack := PMyPack(pHeadBuf); //解析出包头
iBodyLen := myPack^.PackLen; //得到包体的长度
if iBodyLen > 0 then
begin
//再读取包体
GetMem(pBodyBuf, iBodyLen);
iRet := Recv(xl_socket, pBodyBuf^, iBodyLen, 0);
if iRet = SOCKET_ERROR then
begin
systemLog('Read Error!');
Exit;
end;
sMsg := string(pBodyBuf);
FreeMem(pBodyBuf, iBodyLen);
//*******到这里,我已经得到服务器传过来的数据包了,这里要如何触发自定义的事件???
end;
end;
end;
FD_CLOSE:
begin
systemLog('Socket Closed!');
end;
end;
end;
相关推荐
PI系统高级PI客户端ActiveX脚本编程课程教材
PI(Plant Information System)是由美国OSI Software公司开发的一套基于Client/Server结构的商品化软件应用平台,是过程工业全厂信息集成的必然选择。作为工厂底层控制网络与上层管理信息系统网络连接的桥梁,PI在工厂信息集成中扮演着特殊和重要的角色。 这个是基于PI系统客户端ActiveX脚本编程高级课程教材,对于学习运用PI数据库二次开发非常有用。
VC2010给ActiveX添加事件
VC2010如何给ActiveX添加事件方法
如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件
如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件
实现ActiveX控件的事件
实现ActiveX控件的事件 实现ActiveX控件的事件 实现ActiveX控件的事件 实现ActiveX控件的事件
JavaScript调用Activex控件的事件的实现方法
最近在搞一个客户端调用activex控件的开发。一些实现方法小结,需要的朋友可以参考下。


网络通信/分布式开发
