問題タブ [delphi-5]

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

web-services - delphiWebサービスを使用してテーブル内のデータを削除する

デルファイでの私のプログラムに関してこの問題があります。このリクエストURLを使用してテーブル内のデータを削除したい:http://localhost:8001/delete/woodSpecie?json={"SessionID":"MVykZKX31d19dYnywxsXM1MdPy0U7VW8","wood_specie_id":"80"}

私は実際にWebサービスを作成しています。

以下は私のデルファイコードです:

何が起こったのかというと、このエラーメッセージが返されます。

何が悪かったのか本当にわかりません。削除できず、そもそもテーブルが空ではありません。また、すべての例外を確認することはできませんでした。

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

delphi - Delphi を介した実行時の odbc データソース接続

実行時に ODBC データソース接続を作成できますか? はいの場合は、それを行う方法について助けていただけますか。現在、[コントロール パネル] -> [管理ツール] -> [データソース] から ODBC データソース接続を手動で作成しています。しかし、ユーザーがアプリケーションを実行するときに、実行時にそれを作成したいと考えています。

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

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

delphi - Unicode以外のDelphiバージョンでDiacraticを使用してWideStringを作成するにはどうすればよいですか?

私は次の(テスト)を構築しようとしていますWideString

á(U + 00E1小文字ラテン語Aと急性

しかし、それを分解した形で使用する:

ラテン語の小さな文字A(U + 0061)アキュートアクセントの組み合わせ(U + 0301

だから私はコードフラグメントを持っています:

それが機能していないように見えることを除いて:

ここに画像の説明を入力してください

これはのバグである可能性MessageBoxがありますが、先に進んで、バグが私のコードにある可能性が高いと言います。

私が試した他のいくつかのバリエーション:

ボーナスおしゃべり

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

delphi - Delphi 5にはソートされた辞書コンテナがありますか?

私はDelphi5を初めて使用mapし、C ++と同じ機能(つまり、ソートされた辞書)を実行するコンテナー(理想的には組み込みのコンテナー)を探しています。私は予備的なグーグル検索をしました、しかし明白なものはそれ自身を示唆しているようには見えません。誰かが私を正しい方向に向けることができますか?

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

string - フロートまたは通貨をローカライズされた文字列に変換するにはどうすればよいですか?

Delphi 1では、FloatToStrFまたはを使用すると、小数点を表すCurrToStrFために文字が自動的に使用されます。DecimalSeparator残念ながらDecimalSeparator 、SysUtilsではChar1,2として宣言されています:

最大3文字までLOCALE_SDECIMAL使用できます。

小数点に使用される文字(「。」など)。「3.14」または「、」の「3,14」。この文字列に許可される最大文字数は、終了ヌル文字を含めて4文字です。

これにより、Delphiは小数点の読み取りに失敗します。""のデフォルトの小数点を想定するためにフォールバックします.

私のコンピューターでは、かなりの文字ですが、これにより、浮動小数点と通貨の値がU + 002E(終止符)の小数点で誤ってローカライズされます。

浮動小数点または通貨の値をローカライズされた文字列に変換するように設計されたWindowsAPI関数を直接呼び出します

これらの関数を除いて、画像コードの文字列を取ります。許可される文字は次のとおりです。

  • 文字「0」から「9」(U+0030.. U+0039
  • .数値が浮動小数点値の場合は小数点1桁( U+002E
  • 数値が負の値の場合、最初の文字位置のマイナス記号(U+002D

浮動小数点または通貨の値をそれらの規則に従う文字列に変換するための良い方法1は何でしょうか?例えば

  • 1234567.893332
  • -1234567

ローカルユーザーのロケール(つまり、私のコンピューター)を考えると、次のようになります。


私が使用できる恐ろしい、恐ろしい、ハック:


VCLが使用する一連の機能に関する追加情報:

ノート

私のバージョンのDelphi2
現在のバージョンのDelphiでは1

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

delphi - 通貨の値をNAN、INF、または-INFに設定しますか?

いくつかのコードをテストして、それが処理され、正しく入力されることを確認したいと思いNANます。INF-INF

、、を返す関数が存在することは 知っていますが、:としてNANINF-INFDouble

私の場合を除いて、aCurrencyがこれらの3つのエッジケース値の1つであるかどうかをテストする必要があります。Double残念ながら、これらのいずれも:に変換することはできません。

をに変換すると、EInvalidOp 無効な浮動小数点演算の例外が発生します。Double NANCurrency

にを割り当てることは可能ですか?NANCurrency

おそらく、 aをに割り当てることは可能ではなく、代わりに不可能です-そして私はこのエッジケースを無視することができます。NANCurrency

このエッジケースを無視できますか?

「通貨の値をNAN、INF、または-INFに設定する」ことはできますか?


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

delphi - 解放された後に誰かが私の TADOConnection を使用したことを検出しますか?

今日、同僚が、Windows XP では機能するが Windows 7 では機能しないコードのエラーを報告してくれました。

ユーザーが「SalesOrdersystem」にログインできませんでした

私の物理的なデバッグは、閉じられたデータベース接続に対してクエリを実行していたか、開くのを忘れていたことを教えてくれました。

ADO2.6 以降、Windows Vista では、PersistSecurityInfo接続文字列の の既定値はFalseではなく ですTrue

Windows Vista より前の接続文字列は次のとおりです。

接続が開かれた後、接続文字列にパスワードが保持されます。これは、次のようになります。

Windows Vista 以降では、パスワードは既定で接続のConnectionStringプロパティから削除されます。

これは

パスワードが削除されるというこの動作が同僚に発生していることは知っていました。そして、接続が閉じられている間、彼は暗黙的に接続を開こうとするクエリ (つまり、ADOQuery.Open) を開こうとしています。しかし、接続文字列にパスワードが保存されていないと、元のエラーが発生します

質問は、「最初に開かずに接続を使用するのはなぜですか?」という質問になりました。

後で解放される接続を使用していた (マルチスレッド コード) までさかのぼって追跡しました。

疑似コード:

それよりも

冗談で、接続文字列を次のように変更することで、エラーをマスクし、クラッシュの可能性を残すことができると提案しましたPersistSecurityInfo=True

彼がしたこと。


内部でオブジェクトを使用するライブラリ コードがいくつかありADOConnectionます。コードを次から変更できるようにしたいと思います。

しかし、以前は機能していたエラーが発生すると確信ています。

私が考えているのはOnConnect、接続オブジェクトにハンドラーを挿入できるある種のクロージャーです。

しかし、Delphi には匿名のイベント ハンドラがありません。

オブジェクトが解放された後、オブジェクトを使用しているときに人々に警告できる方法を考えられる人はいますか?


注:私が求めていることに対するサポートがないことを理解しています。現実の限界を考慮して、可能な限り最高のハックのアイデアを求めています。

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

delphi - FastMM がメモリ リークを検出できない

Delphi5 のアプリケーションで FastMM 4.97 を使用しています。

テスト目的で意図的なリークを使用して IDE からアプリケーションを実行すると、すべてがうまく機能します。適切な通知とエラー ログが表示されます。

ただし、IDE の外部でアプリケーションを実行しても何も起こりません (たとえば、Windows エクスプローラーから .exe ファイルを実行します)。

何か不足していますか?この動作は意図したものですか? 変更できますか?

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

delphi - Delphiでhttp認証を使用してURLを開く方法は?

ログインとパスワードを透過的に渡す「http認証」が必要なURL(ブラウザウィンドウ)を開く方法は?Delphi のレガシ アプリでは、Reporting Services から ".aspx" でレポートを開く必要があります。

ありがとう、セルソ

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

delphi - ライブラリと互換性のないDelphi5

Delphi 5のアプリケーションプロジェクトにアドバンテック(BDaqCL.pas)ライブラリを追加しようとしていますが、.PASファイルには次のようなコードが含まれています。

これによりエラーが発生します:

これは、D5と互換性のないDelphiの新しいバージョンの機能ですか?もしそうなら、すべての人を手動で変更する価値がありますか(多くあります)、それとも私はもっと深刻な問題に遭遇することになりますか?

編集:ほとんどの列挙は上記のとおりですが、以下のようにもっと複雑なものもたくさんあります。手動で行うには多すぎます:

編集:私はそれらを定数として宣言するプロセスを始めています。次のことを行うのが正しいかどうか誰かに教えてもらえますか

ここで、var宣言をリストしたままにして、const宣言を一番上に移動します。

constが何にも等しくない場合、どうしたらよいかわかりません。たとえば、

ご覧のとおり、私は自分の仕事を切り取っているので、最初にそれを正しく行っていることを確認するのが最善です。ありがとう