|
|
|
Forum Member
      
участник
Last Login: 26.09.2006 19:09
Сообщ.: 28,
Visits: 260
|
|
Необходимо написать приложение, использующие скрипты как модули расчетов.
Задача состоит в том, что предлагаемое приложение просто написать в стандартном варианте, чтоб весь код находился в откомпилированном файле, не возможно. Так как функции, принципы расчета, математика, постоянно меняются, а в некоторых случаях придется создавать что-то своё отличающиеся от эталонных кодов.
Тут и появляется первый вопрос, как можно оформить в коде идею, к примеру, передачи данных скрипту и передачи результата обратно в основную программу, не переписывая сам скрипт.
Я прекрасно понимаю, что есть возможность просто добавлять в файл скрипта необходимые входные данные, но это не подходит, так как кроме передачи данных необходимо получать результат обратно.
Для примера как оформить такой код, передаем параметры цикла от 1 до 10, а в цикле возвращаем фразу “hello world” обратно в программу в текстовое поле.
Хотелось бы чтоб код был на VB 6 или Delphi 7, так для меня будет понятней.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 27.03.2008 20:32
Сообщ.: 1 577,
Visits: 17 091
|
|
Можно экспортировать TLB скрипт-контрола Microsoft Script Control, экспортированный файл прописать в uses и использовать примерно так:{$APPTYPE CONSOLE} uses ActiveX, MSScriptControl_TLB; var scr: TScriptControl; begin CoInitialize(nil); scr := TScriptControl.Create(nil); scr.Language := 'VBS'; // Используем VBScript scr.AddCode('A = 55'); // Код сразу выполняется. scr.AddCode('B = 11'); scr.AddCode('X = A + B'); scr.AddCode('MsgBox X'); // Окно с результатом WriteLn(scr.Eval('X')); // Результат вытаскивается в делфи и печатается scr.Free; end.
|
|
|
|