Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从C#应用程序在文本框中执行VBScript命令?_C#_Vbscript_Textbox - Fatal编程技术网

如何从C#应用程序在文本框中执行VBScript命令?

如何从C#应用程序在文本框中执行VBScript命令?,c#,vbscript,textbox,C#,Vbscript,Textbox,如何从C#应用程序中的TextBox控件执行VBScript的代码 比如,假设我有一个C#Windows应用程序(表单) 并且有两个控件 文本框(txtCode) 按钮(btnExecute) txtCode具有VBScript代码 我想在点击btnExecute执行VBScript代码时 您需要使用控件来完成此操作 因为我认为你不能在加载的页面中注入VBScript代码。因此,您可以创建一个Temp.html页面,将文本框的脚本保存在其中,然后将其加载到WebBrowser控件中。难道您不能简

如何从C#应用程序中的TextBox控件执行VBScript的代码

比如,假设我有一个C#Windows应用程序(表单) 并且有两个控件

  • 文本框(txtCode)
  • 按钮(btnExecute)
  • txtCode具有VBScript代码 我想在点击btnExecute执行VBScript代码时

    您需要使用控件来完成此操作


    因为我认为你不能在加载的页面中注入VBScript代码。因此,您可以创建一个Temp
    .html
    页面,将文本框的脚本保存在其中,然后将其加载到WebBrowser控件中。

    难道您不能简单地将其写入文件并使用默认的Windows行为或类似行为执行它吗?这是我能想到的唯一办法。

    看看这两篇文章:


    您可以将VBS/JS直接传递给脚本运行时,并传递代码和对象

    向Microsoft脚本控件(COM)添加一个引用,然后您可以

    MSScriptControl.ScriptControl sc = new MSScriptControl.ScriptControl();
    object[] anyParams = { "Bob"};
    string expr = @"function foo(arg)
        dim x: x = ""Hello "" & arg 
        msgbox x
        foo = 12345 
        End function";
    
    sc.Language = "VBScript";
    sc.AddCode(expr);
    
    object result = sc.Run("foo", ref anyParams);
    
    //also
    sc.Reset();
    result = sc.Eval("1 + 2 / 3 + abs(-99)");
    

    你不能得到写在txtCode文本框中的值,然后在btnExecute click方法上执行它吗?@Muhamad:你为什么要骚扰C#application???@emreviriyaz,你打算怎么做。。VBScript是一种客户端脚本语言。。因此,它只能在带有
    html
    页面或
    超文本应用程序的浏览器中运行。
    @Shekhar学习很好,谢谢。@Shekhar不需要
    html
    hta
    VBScript不仅仅是一种浏览器脚本语言,它还可以与服务器端ASP一起使用