問題タブ [delphi-xe7]
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.
json - JSON オブジェクトを安全に非整列化する方法
適切にフォーマットされていない JSON オブジェクトを非整列化しようとすると、UnMarshall 関数からのオブジェクト参照が期待されますが、nil になります。しかし、アプリケーションを閉じると、そのオブジェクトがメモリ リークを生成します。
JSON オブジェクトが予期された形式でない場合、例外が発生しますが、参照を作成したオブジェクトを破棄せず、関数でそれを返しません。
したがって、サーバーを消費する人はいくつかの関数を呼び出すことができ、リクエストに送信された JSON が適切にフォーマットされていることを保証するものは何もありません。
どうすればこのような状況に対処できますか? それぞれのクラスで JSON オブジェクトを検証する方法はありますか?
ps: Delphi XE7 を使用しています。
delphi - フォーム:透明、フォーム上のコントロール:非透明?
フォームのコントロールに影響を与えずにフォームの alphablend を変更するにはどうすればよいですか?
デルファイ XE7
delphi - uses 句での Delphi 条件付きコンパイル
XE7 でコンパイルするように Delphi 2010 コードを変更しようとしています (2010 でコンパイルする機能を保持したいと考えています)。そのため、メインフォームを収容するユニットに、条件付きディレクティブを追加しました。以下は2010年に正常に動作します
しかし、XE7 は自動的にSystem.Actions
末尾に を追加して uses 句を作成し、System.Actions が 2 回宣言され (以下を参照)、エラー メッセージが表示されます[dcc32 Error] MyForm.pas(10): E2004 Identifier redeclared: 'System.Actions'
。XE7 が条件付きディレクティブ内からユニットを受け入れないのはなぜですか?
android - バーコード読み取り Delphi xe7、インテント後のイベントがトリガーされない
Android/iOS 用の XE7 で開発された私のアプリには、バーコードをスキャンするためのフォームがあります。バーコードが見つかると、アプリはそれが許容可能なバーコードかどうかを検証します。ここのチュートリアルに従ってください: http://www.fmxexpress.com/qr-code-scanner-source-code-for-delphi-xe5-firemonkey-on-android-and-ios/
現在、私は Android でテストしており、バーコードのスキャンと読み取りを統合できますが、バーコードを見つける共有アクティビティから返されたときに「onBarCode」イベントが発生しません。同じコードは Rad Studio の以前のバージョン (XE4、XE5、XE6) では正常に機能しましたが、XE7 では正常に機能しません。
コードの一部を次に示します。
AddBarCode は、バーコードを検証してリストに追加するために使用したものですが、そのコードは問題ではないため、含めませんでした。トリガーすることさえありません。Text1.text:=Barcode と memo1.paseFromClipboard は、イベントも起動していないことを検証するために使用されました。タップして手動で貼り付けるとバーコードが表示されるので、バーコードが読み取られていることを確認できます。
以前のバージョンの Rad Studio のように XE7 で機能しないのはなぜですか?
delphi - Delphi XE7 へのアップグレード後も古いシステム ライブラリ ユニットが存在する
これは私の最初の Delphi アップグレードです (XE5 から XE7 へ)。アップグレード後、私のプロジェクトにはまだ XE5 パス (C:\Program Files (x86)\Embarcadero\Rad Studio\12.0\Source\VCL\Common\Vcl.Forms.pas) を示す開いているユニット (Vcl.Forms など) があります。 ) タブの名前の上にマウスを置いたとき。ユニットの 1 つで「uses」の下にある「Forms」という単語を CTRL キーを押しながらクリックすると、IDE は Forms (12.0) のこの開いているページに誘導します。[フォーム] ページを閉じて、もう一度 [フォーム] を CTRL キーを押しながらクリックすると、新しいパス (C:\Program Files (x86)\Embarcadero\Studio\15.0\Source\VCL\Common) であることを示すページが IDE によって開きます。 \Vcl.Forms.pas)。これらの古いページをすべて閉じて保存し、再度開くと元に戻ります。おそらくライブラリ パスか何かを更新する必要があると思いますが、[ツール] > [オプション] > [Delphi オプション] > ライブラリのすべてのパスに 15.0 と表示されているか、少なくとも XE5 バージョンとは異なるパスがあります。ここで何が起こっているのか、これが問題なのかどうかを説明できる人はいますか?
delphi - パラメータとしてDelphi xe7関数に任意のレコード(任意のタイプ)を渡す方法は?
レコード (任意の型) を取得する関数を定義し、そのフィールドを文字列として提供したいと考えています。私の問題は、レコードをパラメーターとして機能させるにはどうすればよいですか? パラメータを宣言する方法は?
delphi - JVCL インストール Delphi XE7
最近、Delphi XE7 をインストールし、サードパーティ コンポーネント セットを追加しています。私の開発マシンには、Delphi 7、XE4、および XE6 もあります。JVCL 3.48 インストールを実行すると、7、XE 4 および XE 6 をインストールまたは更新するオプションが表示されますが、XE 7 は表示されません。このバージョンを取得するにはどうすればよいですか?
とても有難い
delphi - URLからパラメータを取得(抽出)/設定する方法は?
次のような URL があります (例):
パラメータの値を名前 (「sourceid」、「ion」など) で取得/設定する必要があります。これどうやってするの?Delphi には TIdURI クラスがあり、URL の解析には役立ちますが、パラメーターには役立ちません。すべてのパラメーターを単一の文字列 (プロパティ Params) として返します。もちろん、独自のパーサーを作成することもできますが、それは非常に基本的な機能であるため、標準的な方法が必要です (希望します)。TIdURI にそれがないことに驚きました。