Как выполнить команду VBScript в текстовом поле из приложения C #? - PullRequest
2 голосов
/ 19 апреля 2011

Как я могу выполнить код VBScript из элемента управления TextBox, помещенного в приложение C #?

например, давайте предположим, что у меня есть приложение C # для Windows (форма) и имеет два элемента управления!

  1. текстовое поле (txtCode)
  2. (btnExecute)

txtCode имеет код VBScript и я хочу, чтобы при нажатии на btnExecute выполнить код VBScript !!

Ответы [ 4 ]

3 голосов
/ 19 апреля 2011

Вы можете передавать VBS / JS непосредственно в среду выполнения сценариев и передавать код и объекты вокруг.

Добавьте ссылку в Microsoft Scripting Control (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)");
0 голосов
/ 19 апреля 2011

Не могли бы вы просто записать его в файл и выполнить, используя поведение Windows по умолчанию или что-то в этом роде?Это единственный способ, о котором я могу думать.

0 голосов
/ 19 апреля 2011
0 голосов
/ 19 апреля 2011

Для этого вам понадобится WebBrowser Control.

И так как я не думаю, что вы можете ввести код VBScript в загруженную страницу. Поэтому вы можете создать страницу Temp .html, сохранить в ней скрипт TextBox, а затем загрузить его в элемент управления WebBrowser.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...