问题标签 [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.

0 投票
4 回答
2267 浏览

linker-errors - 奇怪的 C++ Builder 链接器错误 DATA.BIND.OBJECTSCOPE.OBJ

所以我重新编译了一个完美的工作项目,突然间我得到的只是这个链接器错误:

该项目是一个启用了 VCL 的 C++ 控制台应用程序,我不知道它的DATA.BIND.OBJECTSCOPE.OBJ来源。

这些是我正在使用的标题。

我试图做一个完整的磁盘清理,删除所有临时文件等......没有变化......这个项目昨天编译得很好。

0 投票
1 回答
2107 浏览

c++ - Android JNI 桥 Toast C++ 不工作 - 如何解决?

我正在尝试解决我的 hpp 单元的一个小问题。我在互联网上找到了一些示例,展示了如何使用 Android JNI 桥接器在屏幕上显示信息,但它只是在 pascal (delphi) 中,所以我决定使用相同的 pas 文件,但使用 hpp 文件进行转换。直到现在我明白了:

如果你想要帕斯卡单位,这里是:

但是,使用此源进行编译时出现错误...我该怎么办?

PS.:我到达那个状态只是将 AppMetthod 来源与我正在制作的东西进行比较......

日志:

编辑:

新的日志文件:

从现在开始,非常感谢。

0 投票
0 回答
146 浏览

audio - vorbis_analysis 生成访问冲突

我正在尝试创建一个 .ogg 文件,但即使提供的示例代码在调用vorbis_analysis().

我正在使用此编码示例的简化版本。我已经按原样尝试了完整的示例,但我在同一个地方遇到了同样的错误。

下面的代码是通过用常量而不是 wav 文件填充编码缓冲区的简化示例。hFile是在别处创建的实例TStreamFile

第一部分运行良好,创建了标头并将其保存到流中。然后我只是用 1.0 浮点数填充缓冲区以进行测试。

当有足够的数据可用时,调用vorbis_analysis总是生成Access Violation at x write of address x

该变量res始终指示成功,一直到访问冲突。

我正在使用静态链接的 libogg v1.3.2 和 libvorbis 1.3.5

0 投票
1 回答
570 浏览

c++ - C++Builder XE 原始 SSL 套接字

我需要在 C++Builder XE7 中使用 SSL 连接到服务器。我可以找到 HTTPS 和 SMTP 的东西,但没有找到自定义连接的东西。在 BCB5 中,这要容易得多,我会使用自定义代码来完成,但现在使用 Android 和 iOS,需要做一些不同的事情,因为我们现在也需要支持这些产品。

我看过 TIdSocketSSL,但我能找到的例子很少,它似乎需要一个最终来自 SMTP 或 HTTPS 的所有者。

0 投票
1 回答
1819 浏览

c++ - C++ Builder, TShapes, 如何改变颜色 OnMouseEnter

嘿!我正在尝试以编程方式创建一个 TShape。当我运行程序并单击按钮时 - 一切正常。但是当我再次单击该按钮时,事件 OnMouseEnter(OnMouseLeave) 仅适用于最后一个形状。不适用于以前的任何一个。

0 投票
1 回答
1931 浏览

ios - 使用 Application Loader 错误 ITMS-90094 上传 IPA 时出现无效的启动图像错误

我正在尝试通过我的 Mac 上的 Apple 应用程序加载器实用程序上传 .ipa 文件。当我这样做时,我收到此错误:

错误 ITMS-90094:“无效的启动图像 - 您的应用程序包含带有大小修饰符的启动图像,仅支持使用 iOS 6.0 SDK 或更高版本构建的应用程序。”

该应用程序是使用 Embarcadero RAD Studio XE7 / C++ Builder 中的 iOS 8.2 SDK 构建的。我在我的 Mac 上创建了一个有效的 Adhoc Distribution 移动配置,PAServer 15.0 和 Xcode 6.2 使用它来编译应用程序。我已经在我的项目属性中正确定义了 | 在 iOS 平台上为 Adhoc 分发配置。我已更改为发布模式,并在配置下通过项目管理器选择 Adhoc。我先清理应用程序,然后构建它,然后部署它。完成后,我得到一个在我的测试设备上完美运行的有效 .ipa 文件。

根据 Apple 的说法,当您使用 iOS SDK 5.1 或更早版本构建应用程序时会出现此问题,但包含 Default-568h@2x.png 图像(用于 iPhone 5 的 4 英寸视网膜显示支持)。它说要解决此问题,请针对 iOS 6.0 SDK 或更高版本构建您的应用程序。但正如我所说,我使用的是 iOS 8.2 SDK。我也尝试过 8.1,这是我什至在我的系统上安装的仅有的 2 个 iOS SDK 版本。

它说如果您不打算针对 iOS 6 SDK 构建您的应用程序,请从您的项目中删除 Default-568h@2x.png。我尝试删除此文件,错误消失了,但随后出现另一个错误:“iPhone 5 优化要求 - 您的二进制文件未针对 iPhone 5 进行优化。”

它必须以某种方式从 IPA 文件中检测到错误的版本(我只能假设这是等式的 RAD Studio 方面的问题,而不是 Xcode 或大量其他人会遇到这个问题)。其他帖子使用“部署目标”、“基础 SDK”和“目标 SDK”等术语。

我相信我已经正确设置了所有这些,但是我该如何修复它,以便 Application Loader 正确检测到 XE7 生成的 IPA 是使用比 iOS 6.0 更高的 SDK 构建的?

我尝试过的解决方案(没有成功):

大多数搜索结果都说要使用更新版本的 Xcode(至少 5 或更高版本)构建,但我使用的是最新的 Xcode 版本 6.2。注意:到处都是 6.0 版,我也试过 7.0。项目选项是指目标:所有配置 - iOS 设备平台。

  1. http://207.211.86.211/index.php/answers/my-discussion/upload-to-itunesconnect
    这家伙有同样的问题,并说要验证你所有的项目选项 | 应用程序图像的大小正确。我已经确认我的是。他还建议您确保使用 Apple iOS SDK 的发布版本进行构建。通过工具 | 选项 | 环境选项 | SDK Manager,选择iPhoneOS 8.x并点击“更新本地文件缓存”。这也没有帮助。

  2. https://pjstrnad.com/submitting-application-apple-store-delphi/
    首先他建议你在 Project | 下创建一个自定义的 Info.plist 文件。部署。然后要修复无效图像问题,他说您需要添加 MinimumOSVersion 密钥并将其设置为 6.0。

    添加到 Custom.info.plist:

    <key>MinimumOSVersion</key>
    <string>6.0</string>

  3. 由于我只能发布 2 个链接,因此下一个您必须在 community.embarcadero.com 的 Answers 下搜索“Problems deploying for iOs 8.1”以获取原始帖子。

    在这里,他们建议您安装修补程序 30036“将 iOS 应用程序提交到 Apple AppStore 的修补程序”——我这样做了。他们还建议了 Project Options | 德尔福编译器 | 编译,将“--ios-version-min:6.0”添加到附加选项以传递给编译器。由于我使用的是 BCB,因此不确定这是否会影响我,但我也尝试过。

  4. 一篇关于 stackoverflow 的文章描述了如何在 .IPA 文件上使用 otool 和 grep 来确定版本信息。所以我解压缩了我的 ipa 文件,运行 otool w/ grep,它返回了这个输出:

    cmd = LC_VERSION_MIN_IPHONEOS
    cmdsize = 16
    version = 7.0
    sdk = 7.1

    虽然它没有像我期望的那样说 8.1 或 8.2,但两个版本都是7+。这绝对比 6.0 更新,所以肯定有其他地方 Application Loader 正在从其他地方获取版本。

  5. 更改项目选项 | C++ 链接器:高级:支持的最低 iOS 版本为 6.0。

  6. 更改项目选项 | 德尔福编译器 | 链接:支持的最低 iOS 版本为 6.0。

  7. 尝试创建一个全新的空白多设备应用程序,对其进行配置并通过应用程序加载器上传。这失败并出现相同的确切错误。

0 投票
1 回答
119 浏览

c++ - 如何在 C++ 中为子类创建指针?

指向 API 的子类时我有点麻烦。

这是我想要做的原始帕斯卡代码:

它的精简版:

在这里,我有我已经尝试过的事情:

和:

和:

但是编译时总是出错,我该怎么办?从现在开始,谢谢你的建议。

0 投票
1 回答
56 浏览

c++ - Banner->LoadAd() 的错误;功能

我知道我与 C++ 并不完全相关,但是当调用一个名为 LoadAd() 的函数时我遇到了一些麻烦。我尝试在 OnTimer 中的计时器中使用这个函数,在 OnFormShow 和 OnFormCreate 等事件中(是的,我知道它不能在那个函数中,但我试过了)。但是,在执行此功能时,应用程序总是会获得 FC(强制关闭)......有什么解决方案吗?

这是我的代码的一部分:

和:

声明(Principal.h)

//------------------------------------------------ --------------------------

从现在开始非常感谢。

0 投票
0 回答
135 浏览

c++ - 无法在 C++Builder 中安装 CPP WPTools-(Delphi) 派生组件

我正在使用 C++Builder XE6 和 XE7。我从 WPTools(基于 Pascal)组件中派生了一些 CPP 组件,但无法让它们与 WPTools7 一起使用,尽管它们在 WPTools6 和早期版本的 XE 中运行良好。

在尝试构建我的派生 CPP 组件时,Builder 似乎不喜欢它在 WPTools .HPP 文件中找到的按引用传递代码。

如下所示的行:

为此我得到这样的错误:

对我来说,.HPP 代码中的上述声明试图初始化一个外部变量对我来说并不明显,但如果是这种情况,请赐教。

过去通常很有帮助的开发人员并没有提供多大帮助。我不确定他是否不知道问题出在哪里,或者他是否没有任何其他客户尝试过像我一样获取 CPP 组件。

如果我不得不放弃我的 CPP WPTools 派生的组件,可能需要一个月或更长时间来修改我所有的代码,所以我很想找到一个解决方案,如果有的话。有谁知道解决这个问题?

我的印象是,如果你只是传递一个指针,就可以获得与在 C++ 中通过引用传递相同的结果,只要你不尊重变量并显式检查 NULL 值。

我正在考虑修改 WPTools7 代码,看看绕过这个通过引用传递的东西是否能解决问题,但是由于其他人为 Delphi 和 Builder 开发的时间比我长得多,我想我会在花钱之前征求意见很多时间。

由于源代码在 Object Pascal/Delphi 中,我将不得不尝试弄清楚不取消引用的含义。我的印象是 Object Pascal 中的所有内容本质上都是一个指针,但我并不完全确定。

无论如何,我想我会问是否有人尝试过这样的事情?和/或是否有人对它是否有助于解决我的麻烦或创造任何新问题有任何想法?

提前感谢您的帮助。

0 投票
0 回答
79 浏览

c++11 - 分配新对的编译器错误反对现有的对目的

以下代码使用 32 位编译器在 C++Builder XE7 中产生错误:

错误是:

我不明白。这段代码本质上没有任何问题,它在(很多)较旧的编译器中编译得很好。现在这里有一些有趣的地方:

1)64位编译器编译代码没有错误

2) 如果我将对的第二种类型从 'boost::any' 更改为内置类型,例如 'int',则代码编译不会出错

作为一种解决方法,我能够做到这一点:

它的效率较低,但它让我绕过了编译器错误。

直到最近,我一直在使用过时的 C++ 编译器 (C++Builder 5/6),所以我还没有跟上 C++ 标准和 C++11 的变化。因此,我可能不知道导致此代码无效的语言更改。那么,有人可以告诉我这个编译器错误是语言更改的结果,还是编译器错误?

谢谢,

丹尼斯