使用两个 VBScript 连接到 Com 接口

Connecting to a Com interface with two VBScripts

我正在尝试连接到公开 COM 接口的应用程序。 我的 VbScript 代码如下所示:

  Set App = CreateObject( "Starter.Application")
  Set Measurement = App.Measurement
  WScript.ConnectObject App, "App_"

  If Measurement.Running Then
      Measurement.Stop
  End If

这让我可以在 Starter-Application 中控制变量。

我现在要做的是将另一个应用程序连接到同一个 COM 接口,以影响应用程序中的其他变量。自然地,当我使用 CreateObject 命令启动应用程序时,我得到了一个新的应用程序实例。

如何连接到已经用另一个脚本创建的同一个实例?

问:如何连接到已经用另一个脚本创建的同一个实例?

A: 让你的 COM 服务器成为 "out of process".exe:

https://msdn.microsoft.com/en-us/library/Aa242100%28v=VS.60%29.aspx

https://msdn.microsoft.com/en-us/library/windows/desktop/ms683835%28v=vs.85%29.aspx

注意:

如果您的 COM/ActiveX 应用程序已经在进程外 - 但没有像您需要的那样 "share" 状态,您可以创建自己的 VB6 进程外 exe 到 "wrap"原始应用程序。