問題タブ [delphi-2006]

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 投票する
3 に答える
468 参照

delphi - 計算値をキャッシュするためのアプローチ

私たちが取り組んでいる Delphi アプリケーションには、関連するオブジェクトの大きな構造があります。これらのオブジェクトのプロパティの一部には、実行時に計算される値があり、より集中的な計算のために結果をキャッシュする方法を探しています。私が使用するアプローチは、最初に計算されたときにプライベートメンバーに値を保存することです。以下に短い例を示します。

計算に使用されるオブジェクトが変更され、キャッシュされた値をリセットして再計算する必要があることは珍しくありません。これまでのところ、オブザーバー パターンを使用してこの問題に対処しました。オブジェクトは OnChange イベントを実装して、他のユーザーがサブスクライブし、変更時に通知を受け、キャッシュされた値をリセットできるようにします。このアプローチは機能しますが、いくつかの欠点があります。

  • サブスクリプションを管理するには大量のメモリが必要です。
  • キャッシュされた値が多くのオブジェクト (リストなど) に依存している場合、うまくスケーリングされません。
  • 依存関係はあまり明確ではありません (キャッシュ値が 1 つのプロパティのみに依存している場合でも、他のプロパティが変更されるとリセットされます)。
  • サブスクリプションの管理は、全体的なパフォーマンスに影響を与え、維持するのが困難です (オブジェクトが削除、移動されるなど)。
  • 他の計算値に依存する計算をどのように処理するかが明確ではありません。

最後に質問です。キャッシュされた計算値を実装するための他のアプローチを提案できますか?

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

delphi - IntraWeb フォームはオンデマンドで同期できますか?

シナリオ: 画面上にいくつかの編集コンポーネントとボタンを持つ Delphi Intraweb アプリケーションがあります。TIWEdit.OnAsyncExit と TIWButton.OnClick でフラグが設定され、アプリケーションの別のスレッドが、フラグとその他のアプリケーション データに応じて、ボタンの有効なプロパティを設定します。

TIWButton.Enabled プロパティが設定されるまでに、リクエストはすでに終了しており、IW が内部表現と HTML フォームが同期していないことを検出すると、次の対話はキャンセルされます。再同期するため、もう一度クリックする必要があります。

オンデマンドで何らかの方法で画面を更新したいと思います。

  • 2 つが同期されているかどうかを調べて更新を発行するタイマーには、トラフィックとタイミングの点で欠点があります (タイマーが実行される前にボタンをクリックできます)。
  • データをプッシュできる方法は素晴らしいでしょう。
  • おそらく、IW には、コミットしたばかりのアクションをキャンセルせずに、保存以外の同期を行う可能性があります。

私の画面はモデル主導で構築されているため (どのコンポーネントが画面に表示されるのか、コンポーネント間の相互依存関係は何か、つまりビジネス ロジックでは予測できない)、JavaScript を追加して、ユーザーのアクションに応じてボタンを有効または無効にすることはできません。

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

c# - WSDLのソート順は関係がありますか?

既存のDelphi2006(非.NET)クライアントによって使用される既存のC#.NETWebサービスをリファクタリングしています。クライアントを再構築/再デプロイしたくありません。私の目標は、プロキシクラスが変更されないようにWSDLを同一に保つことです。

ツール(Regionerate)を使用して、現在の標準に基づいてメソッド/プロパティをリージョン化およびソートしました。これにより、WSDLのタグの順序が変更されました。

XML差分ツールを使用してファイルを比較し、順序を無視することはできますが、これがクライアントに影響するかどうかはわかりません。Webメソッドまたは(プロキシになる)クラスプロパティの順序は関係がありますか?

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

delphi - LMDWebHTTPGet を使用すると、ファイルが一時インターネット ファイル ディレクトリにのみダウンロードされます

LMD Innovative から LMDWebHTTPGet1 を使用すると、ファイルが一時インターネット ファイル ディレクトリにのみダウンロードされます。

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

delphi - 選択した項目に IntraWeb IWTreeView をフォーカスする

1 つのノードが選択された IWRegion (ClipRegion:= True) にかなり長いツリー ビュー (IWTreeView) があります。レンダリング後にユーザーに表示されるようにそのノードにフォーカスするにはどうすればよいですか? の

私がこれまでに行ったこと:

デルファイで

これにより、私のWebサイトでこれが生成されます(AtozedによるIWTreeView.pasによって行われます):

レンダリング後のツリーには、一番上の項目が表示されます。これは、私がテストしたすべてのブラウザー (IE8、Firefox、Chrome) に当てはまります。

0 投票する
5 に答える
19311 参照

delphi - INDY 10.1.5 - Delphi 2006 で動作する SSL dll はどれですか?

Google ドキュメントに接続しようとしています (Marco Cantu の優れた REST の例に従って) が、次の SSL エラーが発生します。

1) openssl-0.9.8i-i386-win32.zip の SSL dll を使用すると、次のエラーが表示されます。

「SSL ライブラリを読み込めませんでした」

2) indy_OpenSSL096m.zip の SSL dll を使用すると、次のエラーが表示されます。

「SSL接続エラー」

3) openssl-0.9.8h-i386-win32-Indy-IntraWebEdition.zip の SSL dll を使用すると、次のエラーが表示されます。

「SSL ライブラリを読み込めませんでした」

今、私はこれを調査しましたが、スタック オーバーフローに関するリンクを含む、dll へのデッド リンクに関する推奨事項がたくさんあります。使用している INDY のバージョンと互換性のある SSL dll を見つける必要があると思います。

私の質問は、Delphi 2006 & INDY 10.1.5 と互換性のある SSL dll を正確に知っている人はいますか?

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

delphi - Windows 7 で Delphi 2006 アプリケーションが GUI をめちゃくちゃにする

私はインターネットで解決策を探してきました。こちらの Stackoverflow にもあります。しかし、私はこれまで運がありませんでした。

Windows 7 で実行されている Delphi 2006 アプリケーションで問題が発生しています。一部の ComboBoxes が表示されていません。まったく同じアプリケーションが Windows XP でも正常に動作します。

パッチを見つけようとしています。Vista/Windows 7 で Delphi 2006 アプリケーションを実行するときに、GUI を適切に表示するためのリンクまたはハックを知っている人はいますか?

このリンクを見つけました: http://www.theabsolute.net/sware/delphivista.html。しかし、それは私の問題を解決しません。

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

/ブライアン

0 投票する
7 に答える
11044 参照

delphi - Delphi 2010 暗号化ライブラリ

Delphi 2006、Delphi 2009、Delphi 2010で動作するオープン ソースの Delphi 暗号ライブラリをお勧めできますか

必要なアルゴリズム: DES、MD5、SHA-1

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

delphi - Delphiでのワイドストリングの互換性の問題

Delphi2006を使用したdllビルド

Delphi2010でビルドされた実行可能ファイル

dllにステップインすると、aPath='123'になります。実際、私が渡す文字列はすべて正確に半分にカットされます。

1.)文字通り半分になるのはなぜですか?2.)どうすれば修正できますか?