我想知道是否可以从 C# 调用 VBScript 中的函数。让我试着澄清一下。我正在使用自动化另一个应用程序的应用程序(Quick Test Professional 或“QTP”),主要使用 VBScript。通过插件模型,可以通过将插件写入作为 .NET 程序集的测试应用程序 (QTP) 来扩展测试功能。基本工作流程是 VBScript 测试自动化测试应用程序,并且可以在可扩展性添加程序集中调用类上的方法来做更复杂的事情。这部分工作正常。
我想知道的是我的 C# 代码(在程序集中的可扩展性添加中)是否可以回调 VBScript 中的函数。我不认为测试应用程序框架(QTP)明确支持这一点,所以我想知道是否有任何方法可以使用标准互操作技术来做到这一点。我正在考虑使用 GetRef() 来获取对感兴趣的 VBScript 函数的引用,将其作为参数传递给我在可扩展性插件中调用的方法(我怀疑即使在这一点上我也会遇到编组问题?)然后在我的可扩展性添加的 C# 代码中,以某种方式调用此对象的方法;这是我完全迷失的地方(因为如果没有反射中通常使用的必要类型信息,我不知道如何做到这一点)。
我认为这可能是不可能的,但如果是这样的话,我想确认一下。
谢谢!