Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как вызвать функцию на JavaScript из C++? / 12 сообщений из 12, страница 1 из 1
04.07.2006, 16:01
    #33830589
ErV
ErV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
Ситуация -
в приложение (GUI) нужен callback, изменяемый (произвольно) в runtime.
callback - функция, которая берет 4 float'а и вычисляет по ним определенное значение (чистая математика).

Теперь вопрос - как это сделать? Я могу написать свой парсер выражений, но это - время, и мне, если честно, влом так как там нужны возможности типа объявления локальных переменных и констант. (желательно C++-like синтакс)

Исключая встраивание в прогу Perl, Python и проч есть - вариант сделать текстовую функцию на Jscript и её вызывать. Подскажитье, PLZ, как это сделать, либо альтернативные варианты.
...
Рейтинг: 0 / 0
04.07.2006, 16:14
    #33830649
Akh
Akh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
Можно зделать отдельную программку, которую вызывать fork-exec(system)'ом.
...
Рейтинг: 0 / 0
04.07.2006, 16:19
    #33830669
ErV
ErV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
AkhМожно зделать отдельную программку, которую вызывать fork-exec(system)'ом.
Не пойдет, текст функции должен быть изменяем в самой проге во время её выполнения.
...
Рейтинг: 0 / 0
04.07.2006, 16:21
    #33830678
Akh
Akh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
ну.... сама прога может его и компилить... Большие накладные расходы получаются, наверное.

А использование скриптов?
...
Рейтинг: 0 / 0
04.07.2006, 18:00
    #33831033
Drema
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
Используйте объект Microsoft Script Control. Он встроен в Windows, подерживает по умолчанию JScript и VBScript, может поддерживать и все другие скриптовые языки (Perl и прочая).
___________________
Шаблоны, подсветка и дополнительные возможности в Microsoft Outlook
...
Рейтинг: 0 / 0
04.07.2006, 19:23
    #33831253
alex_k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
ErV(желательно C++-like синтакс)
cint
...
Рейтинг: 0 / 0
05.07.2006, 13:07
    #33832593
ZeusTheTrueGod
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
Ком обьект WSHScriptControl (или какой-то созвучный) имеет метод eval,выполняющий параметр как код на VB или на Js.
...
Рейтинг: 0 / 0
06.07.2006, 14:34
    #33835713
ErV
ErV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
Akhну.... сама прога может его и компилить... Большие накладные расходы получаются, наверное.


Платформа - Win32. Хотелось бы, чтоб работал не только у меня и без установленного MSVS.
Akh
А использование скриптов?

Об этом и был вопрос. В винде есть встроенные скрипты, вот я и спрашивал, как их подрубить (так как раньше так не делал, а в справке пока ничего не нашел).

Drema
Используйте объект Microsoft Script Control. Он встроен в Windows, подерживает по умолчанию JScript и VBScript, может поддерживать и все другие скриптовые языки (Perl и прочая).

Спасибо, попробую (теперь знаю хотя бы, какой объект/интерфейс ковырять)

alex_k
cint

тоже вариант. скачал, буду ковырять.
...
Рейтинг: 0 / 0
06.07.2006, 15:05
    #33835836
Akh
Akh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
ErV AkhА использование скриптов?
Об этом и был вопрос. В винде есть встроенные скрипты, вот я и спрашивал, как их подрубить (так как раньше так не делал, а в справке пока ничего не нашел).


В частности Win32 имел ввиду bat файл.
...
Рейтинг: 0 / 0
06.07.2006, 17:50
    #33836544
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
Вот здесь есть вполне понятная инструкция по работе с WSH:
http://www.computerra.ru/softerra/technologizm/6210/index.html
...
Рейтинг: 0 / 0
07.07.2006, 19:29
    #33839581
ErV
ErV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
Akh ErV AkhА использование скриптов?
Об этом и был вопрос. В винде есть встроенные скрипты, вот я и спрашивал, как их подрубить (так как раньше так не делал, а в справке пока ничего не нашел).


В частности Win32 имел ввиду bat файл.
не пойдет, так как прога просчитывает по данной формуле результат, который отображается - вообще это должен быть просчетчик спец текстур - значение цвета пикселя вычисляется по координатам u,v. Соответственно 2^16 вызовов где -то за 30 секунд на 900мгц компе желательно. Была раньше у меня такая тулзина (самопальная), но скрипты там были ужасные (ассмблер отдыхает) и сдохла она давно вмести с исходниками.

cint не подходит, я его ковырял , чего-то не нашел пока способа передать в скрипт параметры.

Microsoft Script Control - в справке ещё ничего разумного не нашел по нему.

2WhiteOwl с ссылку пасибо - дома ковырять буду.
...
Рейтинг: 0 / 0
09.07.2006, 13:47
    #33840618
ErV
ErV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как вызвать функцию на JavaScript из C++?
Всем огромное спасибо! Разобрался, прикрутил, все работает. JScript - как
раз то, что было нужно. (новая прога (Дельфийские гуи и C++ рендер в dll)
текстуру 1024 на 1024 по формуле на скриншоте считает где-то за 15 секунд -
это без оптимизации! Думал, будет намного медленнее. :))
Новой утилите до старой, конечно, ещё далеко, но переделать
её будет несложно, если понадобится.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как вызвать функцию на JavaScript из C++? / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]