小编mau*_*ujo的帖子

C++ - 如何获取用户文件夹?

我的程序有点问题...

我必须使用应用程序数据创建一个文件,但我不知道如何访问%USER%%APPDATA%目录...

我尝试使用应用程序文件夹,但是如果我安装应用程序,D:\Program Files\(Organization)\(APPName)我无法在此目录中写入新文件,如果我没有管理员权限,我只能读取或修改...

所以,问题是:如何访问 %USER% 文件夹或获取应用程序的 ADMIN 权限... PS.:我在 C++ Builder 中使用 VCL

c++ directory vcl

5
推荐指数
1
解决办法
2万
查看次数

Android JNI网桥Toast C++无法正常工作 - 如何解决?

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

#ifndef Android_Jni_ToastHPP
#define Android_Jni_ToastHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-                                        // All warnings off
#pragma option -Vx                                        // Zero-length empty class member 
#pragma pack(push,8)
#include <FMX.Helpers.Android.hpp>                        // Pascal unit
#include <Androidapi.JNIBridge.hpp>                       // Pascal unit
#include <Androidapi.JNI.JavaTypes.hpp>                   // Pascal unit
#include <Androidapi.JNI.GraphicsContentViewText.hpp>     // Pascal unit
#include <Androidapi.JNI.Util.hpp>                        // Pascal unit
#include <Androidapi.JNI.App.hpp>                         // Pascal unit
#include <FMX.Surfaces.hpp>                               // Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Android
{
namespace Jni
{
namespace Toast
{
//-- type declarations …
Run Code Online (Sandbox Code Playgroud)

c++ delphi java-native-interface c++builder c++builder-xe7

1
推荐指数
1
解决办法
1541
查看次数

如何使用 C++ builder (Firemonkey) 获取屏幕尺寸

我知道这是一个愚蠢的问题,但是在更改视觉库时,我发现 FMX 存在“麻烦”...我的问题是:我需要做自己的边框,所以我将属性设置为边框样式:“无”,但是该应用程序全屏运行,也覆盖了 Windows 工具栏,所以我想要一种根据屏幕调整申请表大小的方法,例如:

mainForm->Height = Screen->Height - 10;
Run Code Online (Sandbox Code Playgroud)

可以使用 VCL,但是有没有办法使用 FMX 库来做到这一点?我用 FMX 征服的最大值是(我不知道它是如何返回值的,以及值的类型):

Screen->Size(); // TSize
Run Code Online (Sandbox Code Playgroud)

我现在也征服了它,但我有编译器错误:

TSize* Tamanho = new TSize;
Tamanho = Screen->Size();
frmPrincipal->Width = Tamanho->Width;
frmPrincipal->Height = Tamanho->Height - 10;
Run Code Online (Sandbox Code Playgroud)

错误:“E2034 无法将 'TSize' 转换为 'TSize*'”

最后我试着把它放在 frmPrincipal.h 上,但同样的错误:

TSize *Tamanho;
Run Code Online (Sandbox Code Playgroud)

PS。:解决“主要问题”的其他可能的解决方案是可以接受的......

多谢!

c++ c++builder firemonkey-fm3 c++builder-xe6

0
推荐指数
1
解决办法
2143
查看次数