none
C# 静态方法是否可以直接使用在VBScript中? RRS feed

  • 问题

  • 现在在开发ScriptEngine(脚本引擎),里面使用的VBScript,脚本引擎和客户端的.NET 做一些交互动作,使用的MS 的ActiveXScripting 技术。

    目前想在脚本引擎中直接使用.NET类库中的静态方法,比如说在脚本中直接写入:String.Join("参数A","参数B") 这样的方法得到返回结果提

    供给脚本使用,哪位用到过类似技术的可否提供点参考方案或者资料?感激不尽!!!

    2017年6月16日 6:57

答案

  • Hi,

    感谢你在MSDN论坛发帖。

    如果在VBScript中直接调用C#的静态方法。好像是不可以的。

    如果要调用把C#的code变成DLL或者COM组建,然后注册这些,就可以调用DLL里面的函数。

    注册的方法,你可以参考这个代码:

    regasm /codebase MyAssembly.dll

    然后调用:

    dim myObj
    Set myObj = CreateObject("MyNamespace.MyObject")

    关于DLL的详细步走,你可以看一下这个文档,上面是关于COM的调用。

    http://www.solutionmaniacs.com/blog/2012/5/29/qtp-calling-c-dll-in-vbscript.html

    Best Regards,

    Hart

    • 注意:此回复包含对第三方万维网站点的引用。 Microsoft提供此信息为您提供方便。 Microsoft不控制这些网站,并且没有测试在这些网站上发现的任何软件或信息; 因此,Microsoft不能对任何软件或信息的质量,安全性或适用性做任何声明。 使用互联网上发现的任何软件都存在固有的危险,Microsoft警告您,在从互联网检索任何软件之前,请确保您完全理解风险。


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.


    2017年6月16日 7:28
    版主
  • Hi,

    请看我最新的回复。

    Best Regards,

    Hart


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    • 已标记为答案 Fred.ding 2017年6月16日 8:31
    2017年6月16日 8:09
    版主

全部回复

  • Hi,

    感谢你在MSDN论坛发帖。

    如果在VBScript中直接调用C#的静态方法。好像是不可以的。

    如果要调用把C#的code变成DLL或者COM组建,然后注册这些,就可以调用DLL里面的函数。

    注册的方法,你可以参考这个代码:

    regasm /codebase MyAssembly.dll

    然后调用:

    dim myObj
    Set myObj = CreateObject("MyNamespace.MyObject")

    关于DLL的详细步走,你可以看一下这个文档,上面是关于COM的调用。

    http://www.solutionmaniacs.com/blog/2012/5/29/qtp-calling-c-dll-in-vbscript.html

    Best Regards,

    Hart

    • 注意:此回复包含对第三方万维网站点的引用。 Microsoft提供此信息为您提供方便。 Microsoft不控制这些网站,并且没有测试在这些网站上发现的任何软件或信息; 因此,Microsoft不能对任何软件或信息的质量,安全性或适用性做任何声明。 使用互联网上发现的任何软件都存在固有的危险,Microsoft警告您,在从互联网检索任何软件之前,请确保您完全理解风险。


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.


    2017年6月16日 7:28
    版主
  • 我指的是在VBScript 中使用 C# 静态方法

    如以下VBS语句:

    Dim varStr

    Set varArray=Array("1","2","3")

    varStr=String.Join("-",varArray) '此处的String.Join为C#中的静态方法

    MsgBox varStr

    输出结果为:1-2-3

    2017年6月16日 7:52
  • Hi,

    请看我最新的回复。

    Best Regards,

    Hart


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    • 已标记为答案 Fred.ding 2017年6月16日 8:31
    2017年6月16日 8:09
    版主
  • 谢谢你的答案
    2017年6月16日 8:32