問題タブ [c++builder-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.
linker-errors - 奇妙な C++ ビルダー リンカー エラー DATA.BIND.OBJECTSCOPE.OBJ
それで、私は完全に問題なく動作するプロジェクトを再コンパイルしましたが、突然、次のリンカーエラーが表示されました。
このプロジェクトは、VCL が有効になっている C++ コンソール アプリケーションであり、どこからDATA.BIND.OBJECTSCOPE.OBJ
来たのかわかりません。
これらは私が使用しているヘッダーです。
ディスクを完全にクリーンアップして、すべての一時ファイルなどを削除しようとしました... 変更はありません... このプロジェクトは昨日正常にコンパイルされました。
c++ - Android JNI ブリッジ Toast C++ が機能しない - 修正方法は?
hpp ユニットの小さな問題を解決しようとしています。Android JNIブリッジを使用して画面上の情報をトーストする方法を示す例をインターネットで見つけましたが、それはパスカル(デルファイ)だけだったので、同じpasファイルを使用することにしましたが、変換にはhppファイルを使用しました。今まで私はそれを手に入れました:
パスカル単位が必要な場合は、次のとおりです。
ただし、このソースを使用してコンパイルするとエラーが発生します...どうすればいいですか?
PS .: AppMethod のソースと私が作っていたものを比較するだけで、その状態にたどり着きました...
ログ:
編集:
新しいログ ファイル:
以来、どうもありがとうございました。
c++ - C++Builder XE Raw SSL ソケット
C++Builder XE7 で SSL を使用してサーバーに接続する必要があります。HTTPS と SMTP のものは見つかりますが、カスタム接続のものは見つかりません。BCB5 でははるかに簡単でした。カスタム コードを使用していましたが、Android と iOS では、これらの製品もサポートする必要があるため、少し異なる方法で行う必要があります。
私は TIdSocketSSL を見てきましたが、私が見つけることができる非常に少数の例では、最終的に SMTP または HTTPS に由来する所有者が必要なようです。
c++ - C++ Builder, TShapes, 色を変更する方法 OnMouseEnter
へー!プログラムで TShape を作成しようとしています。プログラムを実行してボタンをクリックすると、すべてが機能します。しかし、もう一度ボタンをクリックすると、イベント OnMouseEnter(OnMouseLeave) は LAST Shape でのみ機能します。以前のものでは動作しません。
ios - Application Loader ERROR ITMS-90094 を使用して IPA をアップロードすると、無効な起動イメージ エラーが発生する
Mac で Apple の Application Loader ユーティリティを使用して .ipa ファイルをアップロードしようとしています。すると、次のエラーが表示されます。
エラー ITMS-90094: 「無効な起動イメージ - アプリには、iOS 6.0 SDK 以降でビルドされたアプリでのみサポートされるサイズ修飾子を持つ起動イメージが含まれています。」
このアプリは、Embarcadero RAD Studio XE7 / C++ Builder の iOS 8.2 SDK を使用して構築されています。有効な Adhoc Distribution モバイル プロビジョニングを作成しました。これは Mac 上にあり、PAServer 15.0 および Xcode 6.2 でアプリをコンパイルするために使用されます。プロジェクトのプロパティ | で適切に定義しました。iOS プラットフォームでのアドホック配布のプロビジョニング。リリース モードに変更し、[構成] で [プロジェクト マネージャー] から [アドホック] を選択しました。最初にアプリをクリーンアップしてから、ビルドしてからデプロイします。完了すると、テスト デバイスで完全に動作する有効な .ipa ファイルを取得できます。
Apple によると、この問題は、iOS SDK 5.1 以前でアプリをビルドし、Default-568h@2x.png 画像 (iPhone 5 の 4 インチ Retina ディスプレイ サポート用) を含めた場合に発生します。この問題を解決するには、iOS 6.0 SDK 以降に対してアプリをビルドする必要があります。しかし、私が述べたように、私は iOS 8.2 SDK を使用しています。8.1 も試してみましたが、システムにインストールした iOS SDK のバージョンは 2 つだけです。
iOS 6 SDK に対してアプリをビルドするつもりがない場合は、プロジェクトから Default-568h@2x.png を削除してください。このファイルを削除しようとしたところ、エラーは消えましたが、「iPhone 5 の最適化要件 - バイナリが iPhone 5 用に最適化されていません」という別のエラーが表示されます。
どういうわけか、IPA ファイルから間違ったバージョンを検出しているに違いありません (これは、Xcode や他の多くの人々がこの問題を抱えているのではなく、方程式の RAD Studio 側の問題であるとしか思えません)。他の投稿では、「デプロイ ターゲット」、「ベース SDK」、「ターゲット SDK」などの用語を使用しています。
これらはすべて正しく設定されていると思いますが、XE7 によって生成された IPA が、iOS 6.0 より後の SDK でビルドされたものとして Application Loader によって適切に検出されるようにするには、どうすれば修正できますか?
私が試した解決策(成功せずに):
ほとんどの検索結果では、Xcode の新しいバージョン (少なくとも 5 以降) でビルドするように言われていますが、私は最新の Xcode バージョン 6.2 を使用しています。注: バージョン 6.0 と記載されているところはどこでも、7.0 も試しました。プロジェクト オプションは、ターゲット: すべての構成 - iOS デバイス プラットフォームを参照します。
http://207.211.86.211/index.php/answers/my-discussion/upload-to-itunesconnect
この男も同じ問題を抱えていて、すべてのプロジェクト オプションを確認するように言っています | アプリケーション画像は正しいサイズです。私は自分のものであることを確認しました。彼はまた、Apple の iOS SDK のリリース バージョンでビルドしていることを確認するよう勧めています。ツール経由 | オプション | 環境オプション | SDK Manager で iPhoneOS 8.x を選択し、[ローカル ファイル キャッシュの更新] をクリックします。これも役に立ちませんでした。https://pjstrnad.com/submitting-application-apple-store-delphi/
まず、プロジェクトの下にカスタム Info.plist ファイルを作成することをお勧めします。展開。次に、無効なイメージの問題を修正するには、MinimumOSVersion キーを追加して 6.0 に設定する必要があると彼は言います。
Custom.info.plist に追加:
<key>MinimumOSVersion</key>
<string>6.0</string>投稿できるリンクは 2 つだけなので、この次のリンクは、community.embarcadero.com の Answers で「iOS 8.1 の展開に関する問題」を検索して、元の投稿を検索する必要があります。
ここで、Hotfix 30036「iOS アプリケーションを Apple AppStore に送信するための Hotfix」をインストールすることをお勧めします。彼らはまた、Project Options |で提案しました。Delphi コンパイラ | コンパイルして、コンパイラに渡す追加オプションに「--ios-version-min:6.0」を追加します。私はBCBを使用しているので、それが私に影響を与えるかどうかはわかりませんが、私も試しました.stackoverflow に関する記事では、.IPA ファイルに対して otool と grep を使用してバージョン情報を確認する方法について説明しています。そこで、ipa ファイルを解凍し、otool を実行して grep を実行すると、次の出力が返されました:
cmd = LC_VERSION_MIN_IPHONEOS
cmdsize = 16
version = 7.0
sdk = 7.1
私が期待するように 8.1 または 8.2 とは言いませんが、両方のバージョンは7+。これは間違いなく 6.0 よりも新しいため、Application Loader がバージョンを取得する場所が他にあるはずです。プロジェクト オプションの変更 | C++ リンカ: 高度: 6.0 までサポートされる最小 iOS バージョン。
プロジェクト オプションの変更 | Delphi コンパイラ | リンク: iOS の最小バージョンは 6.0 までサポートされています。
まったく新しい空のマルチデバイス アプリケーションを作成し、プロビジョニングして、Application Loader 経由でアップロードしようとしました。これはまったく同じエラーで失敗します。
c++ - C++でサブクラスのポインタを作成するには?
API のサブクラスを指すときに少し問題があります。
これが私がやろうとしていることの元のパスカルコードです:
それの縮小版:
ここに私がすでにやろうとしたことがあります:
と:
と:
ただし、コンパイル時に常にエラーが発生します。どうすればよいですか? 以来、アドバイスありがとうございます。
c++ - CPP WPTools-(Delphi) 派生コンポーネントを取得して C++Builder にインストールできない
私は C++Builder XE6 & XE7 を使用しています。WPTools (Pascal ベース) コンポーネントからいくつかの CPP コンポーネントを派生させましたが、WPTools6 および以前のバージョンの XE では問題なく動作しましたが、それらを WPTools7 で動作させることができませんでした。
派生 CPP コンポーネントをビルドしようとすると、Builder は WPTools .HPP ファイルで見つけた参照コードによる受け渡しを好まないようです。
次のような行:
次のようなエラーが発生します。
上記の .HPP コードの宣言が extern 変数を初期化しようとしていることがわかりませんが、そうである場合は教えてください。
開発者は、過去には通常役に立ちましたが、あまり役に立ちませんでした。彼が問題を知らないのか、それとも私のように CPP コンポーネントを派生させようとした顧客が他にいないだけなのか、私にはわかりません。
CPP WPTools から派生したコンポーネントをあきらめなければならない場合、すべてのコードを修正するにはおそらく 1 か月以上かかるので、解決策があれば見つけたいと思っています。誰かがこれの修正を知っていますか?
変数を参照して NULL 値を明示的にチェックしない限り、単純にポインターを渡すだけで C++ の参照渡しと同じ結果が得られるというのが私の印象です。
WPTools7 コードを変更して、この参照渡しをバイパスすることで問題が解決するかどうかを確認することを考えていますが、他の人が Delphi と Builder 用に私よりもずっと長く開発しているので、お金を使う前にアドバイスを求めたいと思いました。それに多くの時間。
ソースは Object Pascal/Delphi にあるため、逆参照しないということの意味を理解しようとする必要があります。私は、Object Pascal のすべてが本質的にポインターであるという印象を持っていますが、完全にはわかりません。
いずれにせよ、誰かがこのようなことを試したことがあるかどうか尋ねたいと思いましたか? そして/または、それが私の悩みに役立つかどうか、または新しい悩みを生み出すかどうかについて誰かが考えている場合は?
助けてくれてありがとう。
c++11 - 新しいペアを割り当てるコンパイラ エラー既存のペアに異議を唱える物体
次のコードは、32 ビット コンパイラを使用して、C++Builder XE7 でエラーを生成します。
エラーは次のとおりです。
理解できません。このコードには本質的に問題はなく、(かなり) 古いコンパイラでも問題なくコンパイルできます。ここに興味深いビットがあります:
1) 64 ビット コンパイラはエラーなしでコードをコンパイルします。
2) ペアの 2 番目の型を「boost::any」から「int」などの組み込み型に変更すると、コードはエラーなしでコンパイルされます
回避策として、私はこれを行うことができました:
効率は悪くなりますが、コンパイラ エラーを回避できます。
最近まで、時代遅れの C++ コンパイラ (C++Builder 5/6) を使用していたため、C++ 標準と C++11 の変更について最新の状態に保っていませんでした。したがって、このコードを無効にする言語の変更に気付いていない可能性があります。では、このコンパイラ エラーが言語の変更の結果なのか、それともコンパイラのバグなのか、誰か教えてください。
ありがとう、
デニス