Ссылка на механизм Google V8 из приложения.NET

35
задан Crescent Fresh 30 November 2009 в 17:13
поделиться

5 ответов

я понимаю, что это не может быть точным ответом на Ваш вопрос, но я полагал, что вставлю свою ценность за 2 цента, как я сомневаюсь многим людям, попробовали это.

я заставил его работать созданным управляемая оболочка с помощью смешанного C++ режима. Существуют другие способы сделать это, но я собирался попытаться сделать полную обертку, которая могла использоваться с любого языка.NET.

Получение lib скомпилировать таким способом, которым это могло быть включено в смешанный проект режима, было чем-то вроде проблемы. Я должен был изменить библиотеку времени выполнения (в файле SConstruct) привыкший к / MD и/MDd так, чтобы это было совместимо с переключателем сброса/.

До сих пор у меня есть только простые сценарии, работающие, поскольку я не реализовал обратные вызовы, пользовательские методы, объекты и такой.

Вот быстрый образец того, на что использование похоже для одного из моих тестовых приложений:

V8DotNet.Shell shell = new V8DotNet.Shell();

shell.ExecuteScript(@"print('V8 version is: ' + version());");

Это выполняет более сложные сценарии как base64 кодер, прекрасный также. Но на данный момент я могу только добавить пользовательские объекты со стороны C++.

я готов предоставить больше информации + код, если кому-либо интересно, поскольку я никогда не могу забирать этот проект назад. Но, я боюсь он способ очень кодировать для входа в сообщение здесь, таким образом, мы должны были бы найти некоторый другой носитель как код Google или codePlex.

Редактирование:

<час>

хорошо, я загрузил код. Я действительно должен поместить правовую оговорку на это: проект является очень ранним, и я - любитель в C++ в лучшем случае, так не будите свои надежды слишком много. Кроме того, этот проект создавался/делался сразу после того, как хром был выпущен так, версия включенного v8 может быть старой.

Однако здесь это: http://ryanscook.com/Files/V8-DotNet.zip (21,5 МБ)

В пакете Вы найдете следующие объекты интересным:

V8Net-Library\V8. Net\V8. Net.sln - Это - решение, которое имеет обертку управляемого С++ proj и приложение консоли C# для тестирования.

Dependencies\V8 - Это - мой код V8, что я раньше создавал lib V8.

Hope это помогает!

33
ответ дан InteXX 27 November 2019 в 07:03
поделиться

Microsoft создает реальный JavaScript - не "JScript" - время выполнения (наряду с IronPython, IronRuby и VB10) на CLR с помощью ДОЛЛАРА, но я не могу найти загрузки или содержание для него. Возможно, это прибудет с C# 4?

1
ответ дан Orion Edwards 27 November 2019 в 07:03
поделиться

Из того, что я слышу компиляцию, она с IJW (Управляемый С++) должна просто работать - но я могу быть действительно неправым, у меня никогда нет сенсорного MC ++.

0
ответ дан Jonathan C Dickinson 27 November 2019 в 07:03
поделиться

Посмотрите на v8sharp. Он поддерживает выполнение JS внутри приложения .NET. Он также позволяет регистрировать типы .NET в движке v8, чтобы ваш JS-код мог взаимодействовать с кодом .NET. Я нахожусь в процессе добавления поддержки функции хукинга/поддержки делегатов.

13
ответ дан 27 November 2019 в 07:03
поделиться

Вы можете попробовать Javascript .NET:

http://javascriptdotnet.codeplex.com/

Он позволяет вам создать контекст V8 из .NET и зарегистрировать в нем объекты CLI, чтобы вы могли манипулировать ими и вызывать члены из кода Javascript. Он компилирует Javascript во время выполнения.

Проверьте это.

18
ответ дан 27 November 2019 в 07:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: