問題タブ [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 に答える
161 参照

delphi - TdwsUnitを暗黙的に使用する

TDelphiWebScriptオブジェクトをTdwsUnitのScriptプロパティに割り当てるだけで、暗黙的に使用できますか?(スクリプトで使用するために追加する必要はありません)

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

delphi - DWScript ベースタイプの効率

DWScript の限られた量の基本型は非常に便利ですが、多くのオーバーヘッドが追加されるわけではありません。整数が Int64 であることを考えると、たとえばバイト値を扱う場合、これはかなりのオーバーヘッドになるはずです。DWScript はこれを内部的に最適化しますか? そうでない場合、言語拡張機能を使用して他のベースタイプを追加する方法はありByteますか?

これが型推論で問題を引き起こす場合、言語拡張機能でこれを処理できる場合は、整数値の推論をメインのInteger型に延期するか、拡張機能によって処理して、たとえば最小の適切なデータ型を選択することができます。

0 投票する
0 に答える
172 参照

delphi - DWScript で Delphi からオーバーロードされたメソッドを呼び出す

エンジンに含まれるdwsDatabaseLibModule.pasユニットでは、クラスのコンストラクタは、TProgramInfo.Vars[] を介してクラスにアクセスすることによって呼び出されます。同様に、オーバーロードされたメソッドを同じ方法で呼び出すことができると考えていました: info.Vars['TMyClass'].Method['MethodName'].Call.

そこで IInfo.Method プロパティを使用すると、オーバーロードされたメソッドをどのように区別できますか?

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

delphi - Delphi アプリケーションのプラグイン フレームワークとして dwscript を使用する

Delphi アプリのプラグイン フレームワークとして dwscript を使用する方法はありますか? たとえば、数値を加算する dwscript の単純なメソッドがあり、これをホスティング アプリケーションから呼び出す必要があります。

1 つの解決策は、dwscript をテキスト ファイルのままにして、実行時にテキスト ファイルをロードし、ホストからメソッドを呼び出すことです。dwscript を含む dll を作成し、実行時に dll をロードしてからメソッドを呼び出す方法はありますか?

0 投票する
0 に答える
496 参照

delphi - DLL をロード/アンロードし、Delphi DWScript によって実行されるスクリプト内でそのメソッドを使用する方法

こんにちは、Delphi DWScript に基づくプラグインが存在する可能性のあるスクリプト インターフェイスを作成したいので、スクリプト内の DLL の読み込み/バインドに関する質問です。これらのプラグインの一部は、DLL にプラグインに含まれる関数を使用させる可能性があります。DWScript は、スクリプト内で呼び出された DLL をロードする準備ができていますか?

メソッド宣言のステートメントを使用して、メソッドを既に実装しているかLoadLibraryGetProcAddress(動的読み込み)、またはメソッドを静的にバインドしているかを考えていました。lib <dllname> [alias <aliasname>]

TMS Scripter、paxScript、paxCompiler などの他のスクリプト メカニズムは、この機能をすでに管理しています。

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

delphi - DWScript の OnFastEval イベントで結果データ コンテキストを取得する

TDWSUnit 関数の OnFastEval イベントで結果値の IDataContext を取得するにはどうすればよいですか?

OnFastEval イベントによって提供される "マジック関数" 機能は、レコードなどの複雑なデータを返すことはできません。OnFastEval は Variant を返すためです。内部マジック関数は、IDataContext インターフェイスを使用して複雑なデータを返すことをサポートしています。

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

delphi - dwsscript 無効なオペランド

RTTIVariable 型を使用して dws スクリプトをコンパイルすると、「無効なオペランド」というコンパイル エラーが発生します。以下で動作する可能性はありますか?

フォームである変数を宣言します。

スクリプトは、この行ではコンパイルされません。文字列のみが必要なようです。

すべての助けに感謝