問題タブ [embedded-v8]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1265 参照

javascript - V8 JavaScript エンジンと Mac App Store

V8 JavaScript エンジンをアプリケーション (ゲーム) に埋め込んだ場合でも、Mac & iOS App Store で配布することはできますか?

0 投票する
2 に答える
898 参照

perl - Perl:Javascript::V8テンプレート-perlから

HTML :: Mason(またはMason)のようなテンプレートエンジンを探しているので、ソースコンポーネントをperlコードに「コンパイル」しますが、perl-codeの代わりにコンポーネントをJavaScriptコードに「コンパイル」し、Javascript::V8で実行/実行しますperlモジュール。

動機:安全なテンプレート言語の解決策を探しています。サーバーのセキュリティを損なうことなくユーザーを編集できるものです。JavaScriptはフル機能の言語であるため、それを使用することは、TTなどの一部の「ミニ言語」よりもおそらく優れています。私にとって最良の方法は、Moose/PerlではなくJoose/JavaScriptにコンパイルするためのMasonの拡張(書き直し)です。;)

そして、はい、Javascript :: V8を使用してperlからこれを実行したいのです。これは、Javascript :: V8 $context->bind_functionを介してすべてのperlの機能を非常に安全な方法で利用できるためです。

質問:

  • 誰か知ってる?(CPANには何も見つかりませんでした)..。

編集:メイソンでは、例えば書くことができます

JSで上記のように書く可能性があるといいでしょう:

上記のソースはJavaScript(Joose)に「コンパイル」され、Javascript::V8で実行される必要があります。(Masonのように-ソースはperl / Mooseオブジェクトにコンパイルされ、perlで実行されます)...

ご覧のとおり、for(var i in list)は「ミニ言語」ではなく、純粋なJSで記述されています…</ p>

0 投票する
1 に答える
16042 参照

javascript - ChromiumとDelphi6を使用して、Webページで「ネイティブ関数」をJavascriptに公開するにはどうすればよいですか?

Delphi Chromium Embeddedを使用して、Delphi6プロジェクトにChromiumを正常に埋め込むことができました。ここで、Javascriptコードを実行して、結果をホストのDelphiアプリに返すことができるようにしたいと思います。私の現在の方法は、ExecuteJavascript()を呼び出し、Javascript呼び出しが結果を書き込むDOM要素を使用し、DelphiからTTimerメソッドでその要素をポーリングして結果を取得することです。ただし、ネイティブ関数とV8拡張機能を使用して、代わりに結果を受け取る方法として、JavascriptがDelphiコードに「コールバック」を呼び出す方法について読みました。

http://magpcss.org/ceforum/viewtopic.php?f=7&t=180

これを試してみたいと思います。また、DelphiベースのイベントリスナーをWebページのDOM要素(onblur、onmousedownなど)にアタッチする方法も知りたいです。誰かがそれらを見つける場所を知っている場合、私はこれらの2つのことを行う方法を私に示すいくつかのサンプルを探しています。

0 投票する
4 に答える
3309 参照

javascript - C++に埋め込むためのHTML5Canvasの実装はありますか

私はブラウザベースのゲームATMに取り組んでおり、Webブラウザでのプレイが適切でない可能性があるコンソールやデバイスなどの他のプラットフォームに移植するオプションをすでに検討しています。

ゲームはほとんどすべてJavaScriptであり、レンダリングは2Dキャンバスコンテキストを介して行われます。

私が望んでいたのは、JavaScriptでキャンバス呼び出しを処理してopenglなどでレンダリングするためにおそらくgoogleのv8エンジンと連携して動作するc++ライブラリ/APIがすでに存在することです

この機能を提供している可能性のあるプロジェクトを知っている人はいますか?

それ以外の場合、プラットフォーム間であまり多くの違いを維持する必要がないので、JavaScriptに必要な変更をできるだけ少なくしてJavaScriptをC++に埋め込むとどう思いますか?

0 投票する
2 に答える
3246 参照

c++ - C++ コンソール アプリ、SetWindowsHookEx、コールバックが呼び出されない

v8 エンジンが組み込まれた小さなコンソール アプリケーションがあり、キー イベントを登録するためのフックを追加したいと考えています。以前は Qt と QtScript を使用していたとき、これはすべて機能していましたが、VC++ 2008 で直接 C++ に移植しています。アプリケーションはコンパイルおよび実行されますが、フックは呼び出されません。関連するコードは次のとおりです。

main() で

そして手続き:

これは基本的に、v8 サンプル コードから shell.cc を拡張したものです。どういうわけかブロックされているのだろうか?自分がここで何をしているのかよくわかっていないことは認めます。ただ遊んで学んでいるだけですが、これには困惑しました。

keyDown の内部には、次のようなものがあります。

これらのいくつかは最終的に実際には機能しない可能性がありますが、プログラムを実行して次のように定義すると、呼び出されることはありません: onKeyDown = function(key) {...}; onKeyDown が正常に機能していることがわかります。バインドされたすべての C++ メソッドなどを JS から使用できるため、このことは私をバタバタさせています。

何か助けがあれば、おそらくいくつかの教材へのポインタをいただければ幸いです。

明確にするために、c のこの関数: LRESULT CALLBACK HookProc(int nCode, WPARAM wParam, LPARAM lParam) が呼び出されることも、printf が表示されることもありません。フックが確立されます。

/ジェイソン

0 投票する
2 に答える
2114 参照

c++ - node.jsのv8拡張機能-FunctionTemplateをターゲットに設定できません

私は、v8拡張機能(Node.JSドキュメントv8 APIドキュメントの手順に従う)を介してCライブラリ(正確にはリンク文法)へのバインディングを作成することから始めています。

私の問題は、次のビルドエラーが発生することです。

...次のコードをビルドしようとした場合:

上記のリンクの指示に従い、リンク先の例のパターンに従っているように感じますが、前述のエラーが発生します。そこにある最も鋭いC++コーダーではないので、エラーが私を正面から見つめている可能性が非常に高いです。悲しいかな、私は途方に暮れています。

0 投票する
2 に答える
11776 参照

php - Ubuntu に PHPv8js をインストールする

Ubuntu に phpv8js をインストールする際に問題が発生しています。

最近のバージョンの libv8 がインストールされていて、必要なバージョンの PHP がインストールされていることを確認しましたが、PECL を使用するとインストールに失敗します。

出力は次のとおりです。

私が見た唯一の提案は、パッケージの内容を編集して PHP_V8_VERSION を定義することですが、それは少しハックなようです:)

0 投票する
3 に答える
4211 参照

javascript - V8 JavaScript エンジンの http 関数

V8 javascript エンジンをスタンドアロンで使用したい。たとえば、ここで説明するようにコマンド ラインで実行します。

できればjQuery APIを使用して、javascriptにいくつかのhttpリクエストを実行させたいのですが、XMLHttpRequestも問題ありません。

これを行うための組み込みメソッドは V8 にありますか? そうでない場合、アクセサー/cpp 拡張機能を実装せずにそれを達成する方法はありますか?

0 投票する
1 に答える
1347 参照

c++ - gypを使用したV8のHelloWorldの例

SConsは非推奨になっているので。gypを使用してvsソリューションを生成しました。私はBuildingWithGYPのビルドで彼らが私に言ったことをしました。そして、v8プロジェクトは大丈夫です!そして、v8_base.libを取得しましたが、v8.libは取得しませんでした。

そして、hello worldプロジェクトで、始めましょう。libディレクトリをaddライブラリに追加します。しかし、リンクは失敗しました:

リンクしています...

実装が見つからなかったようですが、dumpbinツールを使用して、v8_base.libで見つけることができるシンボルを見つけました。

ライブラリディレクトリは大丈夫だと確信しています。しかし、なぜそれが道具を見つけることができなかったのか分かりません。

0 投票する
3 に答える
4124 参照

javascript - V8エンジンの抽象構文木にアクセスする

特定のJavaScriptコードに対して、v8エンジンのASTにアクセスすることは可能ですか?私はV8エンジンを使用してJavaScript静的アナライザーに取り組んでいます。