Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Catalog · How the catalog works

Random project

ChakraCore_DelphiSample01

ChakraCore Delphi Implement sample.

View on GitHub

Anyone may press Interesting, signed in or not. It helps others find this project.

Member rating

No ratings yet.

Sign in to rate this project.

README

ChakraCore_DelphiSample01

ChakraCore Delphi Implement sample.
on meemory load,set get value,set call function,set get array,error handling, sample code.
win32 console application.

ChakraCore.dll による最小構成サンプル。

  • メモリ上読み込み
  • 値の設定と取得
  • 関数の組み込みと呼び出し
  • 配列操作
  • エラーハンドリング

などを行います。

ChakraCore.dll

各自ご用意ください。win32-releaseで出力した物を使用しています。

https://github.com/Microsoft/ChakraCore

use library

ChakraCore-Delphiヘッダ(ライブラリ)を使用します。以下よりダウンロードしてライブラリパスを通しておいてください。

[https://github.com/hsreina/ChakraCore-Delphi](https://github.com/hsreina/ChakraCore-Delphi)

fix library

動作させるにはDelphi側で2カ所修正が必要です。

  • fix enum size 32bit

初期状態では列挙型が1byteになっています。ChakraCoreでは32bit(int)なのでライブラリファイルの最初にコンパイルマクロを入れてください。

pascal
// ChakraCommon.pas
unit ChakraCommon;
{$Z4}  // add macro. enum size 32bit.
  • fix JsIntToNumber function

参照渡しになっているので以下に修正してください。

pascal
// ChakraCommon.pas
  function JsIntToNumber(
    intValue : int;         //var intValue : int;        //** fix
    var value: JsValueRef
  ): JsErrorCode; stdcall; external DLL_NAME;

blog

詳しい説明は以下になります。

ChakraCore implement basic

ChakraCore implement error handling