我有一个基本的 FFI 调用,它从 Dart 中检索一个 C 结构。只有该结构的char *和int *字段返回正确的值。 float *和int返回错误的值。 C 和 Dart 代码与 output 一起在下方。如果我在 C 一侧打印出这两个错误类型,它们确实会产生正确的值。 C 代码// ...
我有一个基本的 FFI 调用,它从 Dart 中检索一个 C 结构。只有该结构的char *和int *字段返回正确的值。 float *和int返回错误的值。 C 和 Dart 代码与 output 一起在下方。如果我在 C 一侧打印出这两个错误类型,它们确实会产生正确的值。 C 代码// ...
我有一个 dart 方法,它使用 dart:ffi 调用一些 C 代码。 当 C 代码失败时(例如由于某些 memory 违规),我没有收到任何错误消息来指示出了什么问题,但只有整个过程立即退出并显示这些消息: 我不是在询问捕获错误,因为我知道这些类型的错误是致命的,我只是想要一些有用的日志来查看 ...
我有一个简单的 C++ function 编译成一个dylib文件,我试图在 Android 手机上运行。 function 非常简单,它只是将数字相加并返回结果。 但是,我不断收到此错误: Another exception was thrown: Invalid argument(s): Fa ...
我想在 dart 中创建到这个 C function 的绑定,这个 C function 接受一个名为progress_monitor的 function 指针: 其中progress_monitor是一个 function 指针: 在 dart 中,我尝试创建一个 function 指针,如下所 ...
报告前仔细阅读。 我的 flutter web 项目运行良好。 几个小时后,它开始抱怨 'dart:ffi: 我什至没有导入它。 我看到了类似的问题,但没有一个与我有关。 我尝试了我能找到的一切,但没有任何效果。 以下是错误: 我无法包括整个调试控制台的 output,但这些是顶线和底线。 请帮助 ...
我有一个 rust 项目。 为 android 将其编译为.so,我可以使用 Android 运行它。 我还为 iOS 生成了一个文件,并使用了此答案的说明,但它引发了以下错误: Semantic Issue (Xcode): Use of undeclared identifier 'LibSt ...
dll` 到我的颤振项目 在.dll中,我键入函数: 在颤振我输入这个: 我得到错误 类型“Int Function(Int)”必须是“asFunction”的“Int Function(Int)”的子类型。 (文档) Int 在 C:\flutter\bin\cache\pkg\s ...
以下 dart 代码的预期输出是文件资源管理器窗口的句柄,但即使文件资源管理器窗口确实存在,输出也始终为 0! 我在 c++ 程序中运行了函数FindWindowA ,它返回了预期的输出,输入值与NULL和'File Explorer'相同。 在飞镖中使用null抛出错误Invalid arg ...
我正在做一个项目,我想使用 C++ OpenCV 处理我的图像。 为简单起见,我只想将Uint8List转换为cv::Mat并返回。 按照本教程,我设法制作了一个不会使应用程序崩溃的管道。 具体来说: 我在.cpp中创建了一个函数,该函数将指针指向我的Uint8List , rawByte ...
我希望 C++ 代码使用 dart:ffi 在 C++ 本身内部执行异步 function Future<int>作为 function 指针。 作为Future<int>的结果,C++ 代码必须在 C++ 本身内部接收int值。 另外,我无法避免使用Future<i ...
我正在尝试使用libpng1.6从文件加载 png,但执行失败并出现分段错误。 我加载了名为png_image_begin_read_from_file的库和libpng function,如下所示: final dylib = ffi.DynamicLibrary.open( "/ ...
我正在尝试将 pre-compiled.so 文件与 Flutter/Dart FFI 一起使用。 我已经用 dart-ffigen 生成了绑定,这似乎没有任何问题。 我已将以下内容添加到android块内的 build.gradle 文件中。 externalNativeBuild { ...
这是我目前的要求: A) 我剪贴板中的截图/位图必须粘贴到应用程序中(平台:主要是 Windows,但也必须在所有其他平台上运行:Android/iOS/Linux/MacOS/Web) 我发现 Flutter 不支持剪贴板中的纯文本,并且社区请求图像/二进制提取请求。 真可惜,但后来我想起了 F ...
执行dart run ffigen出现如下错误: 我检查了我的 Flutter 环境: 当我运行brew install llvm来安装 llvm 时,我得到的是 arm64 的库,我认为这是导致错误的原因: 好像Flutter SDK没有Apple Silicon的版本,请问如何解决? 我尝试为 ...
我正在尝试为 C++ 代码编写包装器 package,在我们的应用程序中进行一些数据分析。 我发现这篇很棒的帖子显示了执行此操作所需的主要步骤。 我更像是一个 C/C++ 编码器,所以我有点卡住了,我不明白我做错了什么? 这是 analyses.hpp 对应的analyses.cpp 这是 anal ...
由于现在可以在 Flutter 中打开一个 DynamicLibrary(dylib、dll、so)。 这些库是用 C 或 C++ 编写的。 我现在尝试构建一个基本的 dart 命令行应用程序,使用dart compile exe<\/code>对其进行编译,并尝试使用DynamicLi ...
目前我有一个 Uint8List,格式为 [R,G,B,R,G,B,...] 用于图像的所有像素。 当然,我有它的宽度和高度。 我在搜索时发现decodeImageFromPixels ,但它只需要 RGBA/BGRA 格式。 我将像素图从 RGB 转换为 RGBA,这个 function 工作正 ...
我已按照标准Flutter FFI 指令将 libavcodec.dylib 包含在 Flutter 项目中。 调用DynamicLibrary.open('libavcodec.59.dylib')执行没有问题,并返回一个非负句柄地址,(我认为)表明加载成功。 当我尝试查找任何符号时,Flutte ...
我正在尝试从 dart 调用 C 库。 C 代码作为生成器方法,例如a_struc create_struct(void); 然后是接受指向结构的指针的方法,例如:const char * get_info(const a_struc * s); 我已经使用 ffigen 创建了 dart ...
我使用ffigen从 C header 文件生成绑定。 C 中的方法之一是open(const char *path) ,而 ffigen 生成了一个绑定方法open(ffi.Pointer<ffi.Int8> path) 。 如果我想要一个 dart 方法open(String pa ...