用ScriptControl实现VBScript和DELPHI的结合,DELPHI实现了一个COM接口在脚本中可以调用了,接口中有一个 procedure CallUser(AUserName:String),即呼叫一个用户,这个用户是另一台计算机,内部用SOCKET来完成这个呼叫,这个方法是异步的,可能要经过一分钟才能返回呼叫结果,返回后系统将收到
WM_CALLUSER_MSG这个自己定义的消息,消息参数中标明了呼叫的结果.VBScript脚本不知如何写才能调用.不能将CallUser做成同步的,因为同时会有很多个用户来调用.实现的接口实例名称为:UserManage(用户管理)
  .....
  MsgBox "开始一个呼叫"
  Dim CallRes
  CallRes=UserManage.CallUser("2006100")//这是理想的写法,CallUser是异步方法,所以不能这样写
  Select Case CallRes
           Case 0    MsgBox "呼叫超时"
           Case 1    MsgBox "呼叫成功"
           Case -1   MsgBox "呼叫失败"
           Case Else     MsgBox "系统错误,返回未知消息"
      End Select
   ......
  
当然每一次呼叫就创建一个线程,在线程中用一个事件内核对象来进行等待是可以的,但是因为会有很多个用户来调用这个方法,而且还有其它类似的这种异步过程调用,所以不想这样实现.请问有没有别的办法??在VBScript中是否可以通过创建一个不可见的窗体来处理消息???