問題タブ [dwscript]

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 に答える
15983 参照

delphi - dwscript を使用して CreateOleObject 関数を呼び出す方法

dwscript 内からこのコードを実行しようとしています (これは CreateOleObject を使用するための最小限のサンプルです)。

これまでのところ、私はこれを試しました

しかし、私はこのエラーメッセージを受け取っています

構文エラー: 不明な名前 "CreateOleObject" [行: 5、列: 8]

問題は、CreateOleObjectdwscript を使用して関数を実行する方法です。

アップデート

リナスの提案に従って、ようやく問題を解決できました。

これはサンプル作業アプリケーションです

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

delphi - DWSScript のインストール方法

DWSScript コンポーネントのインストールに問題があります。Delphi XE2 を使用していますが、dwsLibRuntime.dpk をコンパイルしようとするとエラーが発生します (Array type required )。プロジェクトの svn リポジトリから取得した最新の DWScript ソースを使用しています。

私は何を間違っていますか?

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

delphi - delphiDWScript-scriptruntimeでタイプTObjectのスクリプト変数値を変更します

私はこのようなDWScriptを持っています

TOutputter(複雑なクラスの単なる例です)は、デルファイコードで宣言および作成され、Rttiを介してDWScriptに公開されます。

コンパイルされたスクリプトをいくつかのインスタンスに使用したいのですが、現在のインスタンスにリンクする値Outputterを変更します。次のコマンドでスクリプト変数にアクセスできることを知っています。

ただし、値はVariantであるため、オブジェクトを割り当てることはできません。どうすれば値を変更できますか?私が最初に次のようなスクリプトでクラスを作成した場合:

Exec.Info.Vars ['Outputter']。ScriptObj.ExtObjectにTOutputterの任意のインスタンス(delphiコードで作成)を割り当て、Outputterを介してスクリプトコードでそれらにアクセスできます。しかし、私はinit部分なしでTOutputterのデルファイコードで作成されたインスタンスを割り当てたいと思います。

助けてくれてありがとう!

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

delphi - Dwscript Web サーバー

Web プログラミング (動的コンテンツの生成) に dwscript を使用したい。Apache Webサーバー用のモジュールがあるかどうか疑問に思っていましたか? または、dwscript に基づいて独自の Web サーバーを実行するにはどうすればよいですか?

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

delphi - TForm.Create(nil) を含む dwscript のコンパイル時のスタック オーバーフロー

dwscriptでモーダルフォームを作成しようとしています。フォームを ExposeRtti に登録してからスクリプトを実行しますが、Script.Compile 中に「スタック オーバーフロー」で失敗します。このエラーの解決策はありますか。

remobjects PascalScript の場合のように、TForm のすべてのプロパティと関数を手動で登録する必要がないように願っています。

dwscript はこれを行うことができますか、それともフォームは単に dwscript の範囲を超えていますか (この段階で?)?

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

delphi - delphiからparamとしてクラスを使用してdwscriptプロシージャを呼び出します

クラスをparamとして受け取るDWScriptプロシージャをdelphiから呼び出すにはどうすればよいですか?

元:

DWScript側:

Delphi側:

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

delphi - DWScriptはスレッドセーフですか?

一部のエンジンは内部データ構造へのアクセスを同期しないため、DWScriptがスクリプト内のスレッドを使用できるかどうかを知りたいです。

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

delphi - DWScript を 2 回実行するときに変数値を保持する方法はありますか?

私が取り組んでいるアプリケーションでは、スクリプト シンペットをドキュメントに埋め込むことができます。例えば:

結果

DWScript を使用しています。内部的には、最初のスクリプト スニペットがコンパイルおよび実行されます。次は RecompiledInContext であり、実行されます。スニペットで宣言された関数/変数/etc は、それ以降のすべてのスニペットで使用可能になります。ただし、変数値はスニペット間で失われます。例えば:

ドキュメントの生成後:

この問題を説明するサンプル アプリケーションを次に示します。

実行間で変数値を「転送」または「保持」する方法はありますか?

これは、機能しないアンドリューの回答の更新されたコードです。

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

delphi - TdwsProgram のシリアル化

私が理解しているように、DWScriptスクリプトを中間バイトコードにコンパイルしません。
ただし、「コンパイルされた」スクリプトを保存して、ストリームを介して送信したり、ファイルに保存したりしたいと考えています。

私は疑問に思っていました:オブジェクトをシリアル化する方法はありますか?TdwsProgram

私はどこにも答えを見つけることができませんでした。コードを調べたところ、それは不可能のようですが、とにかく質問する必要があると思いました...

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

delphi - DWScriptのインストール

XE2にDWScriptをインストールしようとしていますが、苦労しているようです。最新のインストール手順が見つかりません。見つけた古い手順は適用できなくなったようです。

私はsvnリポジトリからのヘッドと、以前のリリースの1つとの両方を試しましたが、どちらもあまりうまくいきませんでした。

ライブラリパスにソースディレクトリを追加しました。

dwsLibを最初に開いたとき、コンパイルされているように見えますが、TdwsUnitが見つかりませんというメッセージが表示されました。dwsLibDesignOnlyとdwsLibRuntime.dpkの両方に、欠落しているdwsCodeGenに関するエラーがあり、ライブラリにJSCodeGenディレクトリ全体が存在するはずですが存在しないようです。

どんな助けでも大歓迎です。

ありがとう、

リチャード