問題タブ [c++builder-xe4]

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

c++ - クラッシュする逆アセンブルされた C++ コードの分析

以下のコードは、コントロールが '}' を離れるとクラッシュします。FieldByName()->AsString を変数に置き換えるか、else が実行されていない場合はそれを削除すると、クラッシュしません。'==' は、AV が発生し始めたときに、SameText に置き換えられました。

分解を見てみると、

else if と else を切り取り、場所 53a566 から続けます

「>」が表示されている場所に AV が発生します。私の質問は、最初のブロックに 3 つの作成と 2 つの破棄しかなく、下部に余分な 2 があるのはなぜですか? したがって、実行されたコードを合計すると、3 つの作成と 4 つの破棄があります。また、どの文字列がどの Create と Destroy に対応しているのかわからないようです。「RequirePO」、AsString、「Y」が 3 つの Create を構成し、Create ポイントの 1 つが別のアドレスを指していることがわかります。多分私はそれを正しく読んでいません。

助けていただければ幸いです。

よろしく、 マシュー・ジョイ

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

comctl32 - TListBox OnDrawItem が COMCTL32.dll で AV を引き起こす

アプリが COMCTL32.dll から TListBox::OnDrawItem へのアクセス違反を生成する原因を絞り込みました。TListBox.Style は lbOwnerDrawFixed です。

アプリは C++ Builder XE4 で構築され、Win7-64 および Win8-64 で実行されます。私はWin7でそれを実現できますが、IDE内からのみ、散発的にしか実現できません。Win7 のリリース ビルドではエラーは発生しませんが、Win8 では毎回発生します。

これは、フォームが最初に作成されたときにのみ発生します。フォームには、次/前のレコードに移動するためのボタンが含まれています。これは、コントロールを設定するすべてのコードを呼び出しますが、これらの呼び出しに問題はありません。フォーム構築後の初回のみ。

フォーム コンストラクターは、TTimer を 100 ミリ秒一時停止するように設定します。TTimer::OnTimer は、データをコントロールにロードする関数を呼び出します。TListBox が読み込まれた後、OnDrawItem イベントが呼び出されます。

TListBox.Style を lbStandard に設定し、カスタム OnDrawItem を削除しても問題ありません。

OnDrawItem ハンドラーのサンプルを次に示します。

TListBox.Canvas が NULL でないことを確認するためにテストしましたが、違いはありませんでした。どうやらそれは常にNULLではありません。

ここから先に進む方法がわかりません。提案を歓迎します。

ありがとう、キャスリーン

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

model - 実行時に FireMonkey に 3D モデルをロードする方法

FireMonkey アプリケーションで 3D モデルをインポートするのと同じように、プロパティ meshCollection によって 3D モデルをロードできました。

しかし、モデルをロードできませんでしたModel3D->LoadFromFile("filepath.obj")

私は多くの時間を試していますが、それでもうまくいきません!

Firemonkey XE4 のバグですか?

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

firemonkey - FireMonkey の TMesh オブジェクトで色を描画するには?

私は別の色を描きたい、これは私のコードです:

どうすればいいですか?カラーマップを使用する必要がありますか? と同じように:

http://edn.embarcadero.com/article/42114

TMesh オブジェクトには 4 つのカラー プロパティがあります。

どういう意味ですか?それの使い方?

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

c++builder - C++Builder > バイナリ番号 0b1 によりエラー E2141 が発生する

C++ Builder XE4 を使用しています。

コードなどで 2 進数を使用しようとし0b1ています。

以下は私が試したコードです:

上記はコンパイラ エラーを引き起こします。

Unit1.cpp(19): E2141 宣言構文エラー

C++Builder はこのような 2 進法をサポートしていますか?

0x11C++Builder で動作することを確認しました。

0b11また、C++ を使用して IDEOne で使用できることも確認しました。

http://ideone.com/oy4aIZ

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

c++ - XE4 c++ VCL アプリケーションでのプリンター プロパティの保存

次の方法で、一部のプリンター プロパティ (つまり、ページ サイズ) を ini ファイルに保存しようとしています。

printerDeviceModeコードは内側のifステートメント内に入りますが、変数を調べるdmDeviceNameと正しいように見えます。他の設定の多くはガベージのようです (を含むdmPaperSize):

printerDeviceMode のデバッグ インスペクター ウィンドウの画像

dmSize0であることに注意してください。

TPrinterSetupDialog コンポーネントを使用してプリンタのページ サイズを変更しようとしましたが、値は変わりませんdmPaperSize

私はどこかで一歩を踏み外したことがありますか?

これは XE4 c++ ビルダー VCL プロジェクトです。