问题标签 [c++builder-10.3-rio]
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.
firemonkey - 在代码中强制应用程序方向为横向
我正在 Rad Studio Rio (10.3.2) 中用 C++ 构建一个多设备应用程序。主要目标是 iPhone。我想要一个按钮,无论手机的实际方向如何,都可以强制应用横向。
我怎样才能做到这一点?我正在寻找这样的东西:
我知道我可以在设计时强制应用程序为纵向或横向:http: //docwiki.embarcadero.com/RADStudio/Tokyo/en/Application_Orientation但这不是我想要的。我想在运行时在我的代码中执行此操作。
我可以编写代码在运行时更改表单(例如,制作表单的“纵向”版本和表单的“横向”版本并在它们之间切换)但我希望有一个代码解决方案让我使用我的当我想要的时候形成并强制它变成风景。
谢谢,拉斯
firemonkey - Firemonkey 中的多行提示
我正在尝试在我用delphi 10 seattle(FMX)制作的应用程序中创建多行提示。设置提示时似乎换行不起作用。
关于如何做到这一点的任何想法。不过,这在 VCL 中运行良好。
c++builder - C++ Builder 10.3 Rio - 测试框架
似乎 C++ builder 10.3. 带有一个新的testframework.hpp
. 该类Assert
不再存在。
谁能告诉我如何使用这个新框架?
我很绝望,因为我写了很多代码,显然 Rio 并不真正兼容。
例如,以下用 Builder 10.2.3 编写的代码行不再起作用:
amazon-web-services - C++ Builder 10.3 Rio 亚马逊存储服务示例
我正在尝试移动使用 C++BuilderTAmazonConnectionInfo
访问 Amazon Simple Storage Service (S3) 上的对象的应用程序。我有一个在 C++Builder 10.1 Berlin 中工作的版本,但是当我尝试将其移动到 10.3 Rio 时,链接失败并出现未解决的外部错误:
[ilink32 错误] 错误:未解析的外部 '__fastcall Data::Cloud::Amazonapi::TAmazonStorageService::GetObjectW(System::UnicodeString, System::UnicodeString, System::Classes::TStream *, Data::Cloud::Cloudapi ::TCloudResponseInfo *, Data::Cloud::Amazonapi::TAmazonRegion)'
此错误的最简单再现是:
- 创建一个新的 C++ Builder VCL 应用程序
- 在窗体上放置一个 TAmazonConnectionInfo 对象和一个按钮,然后双击该按钮
将点击处理程序替换为:
/li>
(我意识到这个程序不起作用,因为没有初始化任何东西,但这会用最少的代码产生链接错误)。
我寻找了一个代码示例,显示了它应该如何工作,但我无法在我的系统上找到 RAD Studio 10.3 Rio 的代码示例,并且似乎没有在 SourceForge 上的RAD Studio 演示代码上为 Rio 更新示例。
我确实在https://github.com/Embarcadero/RADStudio10.3Demos/tree/master/CPP在 Github 上找到了示例,但 Cloud 示例似乎没有针对 C++ Builder 迁移,仅针对 Object Pascal。
我尝试添加CloudService.lib
到项目中,但这没有帮助。也没有添加:
那么,是否有一个可以在 10.3 Rio 下编译和链接的工作 C++Builder 示例?我怎样才能让这个项目编译和链接?
c++builder - 捕获多播视频
我有一个服务器,它使用 VLC 使用 UDP 将视频多播到 IP 192.168.139.1和端口1234,并使用具有相同 IP 和端口 5004 的 RTP。我可以在客户端 PC 上使用 VLC 来查看正在使用的视频地址udp://@192.168.139.1:1234或rtp://@192.168.139.1:5004。
我的任务是编写一个可以捕获此视频并将其保存到文件的应用程序。为此,我尝试TIdIPMCastClient
在 C++ Builder 10.3 中使用。
这是我到目前为止所做的一个片段:
但是将192.168.139.1分配给MulticastGroup
属性 ofTIdIPMCastClient
会抱怨它不是有效的组地址。
所以这是我的问题:
侦听和捕获UDP数据流的正确方法是什么?
还可以
TIdIPMCastClient
捕获RTP数据吗?如果是,我是否需要为此做任何特别的事情?如果不是,我可以使用另一个组件吗?
c++builder - 为什么 #pragma 消息在 hpp 文件中不起作用?
当我插入
在头文件中,编译源代码时永远不会显示此消息。当我将它插入 cpp 文件时,它按预期工作。
这是正常的行为吗?我认为#pragma 消息也应该在 hpp 文件中工作。
Rad Studio Rio 10.3.1
UDPATE:
似乎只有#include <vcl.h>
在标题之前添加时才会发生这种情况。
例如,如果在Unit1.h
我有#pragma message("My message")
和在Unit1.cpp
我有:
它将按预期显示消息。但是,如果我有:
则不显示该消息。
c++builder - 为什么 MSBUILD 从 Rad Studio 10.3 IDE 得到错误但从命令行工作?
在 Rad Studio Rio C++ 项目中,当我编译时,我得到:
请注意,它显示Unit1\obj
,而不是Unit1.obj
。
如果我使用 MSBUILD 从命令行编译它工作正常MyProject.cbproj
此外,如果我设置在Run C++ compiler in separate process
另外,我发现问题仅在于我使用配置管理器时,将.optset
文件分配给项目。如果我取消链接这个 .optset 文件,那么它会再次从 IDE 编译。
这似乎是一个错误。
delphi - 需要帮助:CodeGear.Cpp.Targets(3907,5): 错误 MSB6006: "id" exited with code 1
编译时出现错误:
codegear.cpp.targets(3907,5): error MSB6006: "id" exited with code 1
我之前遇到过类似的错误,并通过以下链接对其进行了修复: https ://community.idera.com/developer-tools/platforms/f/android-platform/67500/unable-to-upgrade-project-from-10-2 -3-to-10-3/83846#83846 但这个问题似乎不起作用。找不到任何相关信息
(3907,5)
任何一个。
debugging - UnicodeString::Length() 干扰调试器显示
每当当前函数包含 UnicodeString::Length() 调用时,调试器似乎会禁止在“局部变量”和“监视”窗口中查看 UnicodeString 的内容。
运行 C++ Builder 10.3 Rio Enterprise(升级到 10.31 以尝试解决问题),我已经开始了一个新项目,添加了一个按钮并将以下代码放入该按钮。这是一大段代码的精简版本,用于追踪和重现问题。
下图显示了此代码的两次不同运行。一个就是如上所示(注释掉一行)。包含该行的其他节目。
我担心的是调试器只显示名为“search”的变量的明显地址,如果我展开它,它会显示“????”,而不是箭头所示变量的内容。另请注意,断点位于导致调试器切换视图的行上方。如果我实际计算子字符串的长度(而不是将“999999”作为它的长度),有什么想法可以让“搜索”的内容出现吗?
winapi - 如何使用 UnicodeStrings 正确调用 GetModuleFileName
GetModuleFileName 未返回 Windows 服务的程序文件名。
我已经将变量定义为 AnsiString 和 UnicodeString,但似乎与我用来获取此值的事件处理程序有关。
没有任何错误消息。应用程序成功编译,但它没有找到应用程序路径中实际存在的初始化文件。
我在另一个服务应用程序上使用了相同的代码,它运行良好。
请问我做错了什么?
是否有任何教程显示处理 UnicodeStrings 的示例?