问题标签 [dart-native-extension]

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 投票
1 回答
141 浏览

dart - 如何在 DART_API 中从 C++ 调用运算符?

调用此函数时出现错误:

这是错误消息:

Dart 程序员如何在 C++ 中调用运算符?

附言

我使用 Dart SDK 版本 1.2.0-dev.1.0

也许我需要切换到稳定版本而不是使用开发版本?

0 投票
1 回答
51 浏览

dart - 阻止访问 dart 中的某些库

有没有办法阻止访问飞镖中的某些库?原因是我想在我的应用程序中允许使用脚本语言。dart 看起来很容易,只需限制可以导入的库并定义我自己的库。这是一个可行的选择吗?例如,我想完全删除对 dart:html 的访问权限,以便脚本不能与 DOM 混淆。

0 投票
0 回答
139 浏览

dart - VS2010 设置上的 Dart 原生扩展演示“sample_extension”

我只能在带有 VS2010 C++ Express Edition 的 PC 上创建/编译 simple_extension.dll(32 位)。我正在关注WHesse关于原生扩展部分Building on Windows的文章。另一方面,我的 PC 具有 Windows 2008 Server R2 64 位、VS2010 Ultimate 和 Dart 64 位(SDK 版本 1.5.0-dev.4.17)。

http://dart.googlecode.com/svn/trunk/dart/samples/sample_extension/sample_extension.cc中找不到。

只是猜测,但我不认为本文的构建步骤适用于完整版本的 VS2010 C++ 项目或 64 位?

有没有人有适用于 sample_extension 项目的 VS2010 C++(完整版)解决方案文件?

更新:运行 example_build.dart 的输出

0 投票
1 回答
603 浏览

dart - Dart:io 标准输入原始字符代码

我已经创建了一个 Dart 控制台应用程序,并且需要处理来自标准输入的箭头键和功能键之类的键码?我见过的样本通常是基于字符串的:

我修改了上面的示例,希望得到这样的原始整数:

似乎标准输入只提供可打印的字符,而不是所有的 ascii 键码。如果从标准输入无法实现,我可以使用键码在我的本机扩展程序中创建和加载流吗?我的控制台应用程序如何获取任何按键的 ascii 键码?谢谢你的帮助!

0 投票
1 回答
377 浏览

dart - Dart:如何在本机扩展中创建流

在我的原生扩展中,我需要将整数流式传输到我的 Dart 控制台应用程序。在概念上与标准输入非常相似。如何创建向控制台应用程序公开的本机 Dart Stream 对象?

0 投票
1 回答
184 浏览

dart - Dart 原生扩展:如何创建“推送”数据流

我将在概念上参考“ Pushed ”与“ Polled ”流来帮助描述我的问题的目标,即“*创建一个模拟 Dart 标准输入流的数据流行为的推送数据流*”

Polled ”:在我之前的问题中,Menzoni 的回答是“ Polled ”流的一个很好的例子。流总是Dart 控制台应用程序启动并请求数据本机扩展。请求得到满足,并且响应返回到应用程序。根据我的经验,这是 Dart 流的典型用法。

Pushed ”:来自外部源的数据被推送到控制台应用程序。数据来源和传输技术无关紧要,它可以是标准输入键盘/鼠标事件、PLC 中断、数据库异步通知等。

我将使用 stdin 流来说明这个例子,它是我试图实现的数据流的一个很好的例子。virtualkeycodes/ints 形式的数据到达本机扩展,缓冲,然后需要“推送”(发送/发布)到 Dart 应用程序,而不需要来自应用程序的数据的任何拉/轮询请求。这是我试图在我的原生扩展的自定义流中实现的目标!

Dart 控制台应用程序伪代码:

本机扩展伪代码(我在这里猜!

谢谢你的帮助。

0 投票
0 回答
185 浏览

dart - 如何在 Linux 上使用 dart odbc 和 mariadb 10.1

有没有人设法使用 linux / ubuntu 14.04 上的 odbc 库和 mariadb 10.1 的 odbc 驱动程序?从 pub 安装并运行测试用例后,我收到错误

如果我想编译扩展,我会得到一个特殊的错误:

我更喜欢这种方式而不是 mysql/sqljocky,并且需要评估它是否适合生产。

0 投票
1 回答
219 浏览

c++ - 如何将 Dart_Handle 列表转换为 C++ 数组?

我正在尝试将 node.js 本机抽象移植到 dart 作为本机扩展。node.js nan 也恰好使用了我不太熟悉的 v8 命名空间。

特别是我遇到问题的[不完整]代码片段是:

字符串和整数相当简单,但 dart_api.h 中用于数组的等效函数似乎不存在,所以我有点卡住了。这是我到目前为止所拥有的:

0 投票
2 回答
1063 浏览

c++ - 如何将外部共享库链接到本机扩展?

我正在编写一个 pty 本机扩展并希望链接 libutil 以便我可以使用 forkpty 和 openpty from <pty.h>.

我正在使用从官方指南中获取的两个命令:

我收到以下错误:

这可能更像是一个 g++/gcc 问题,但据我所知,我通过添加 -lutil 并包括<pty.h>. libutil.so 安装在我的 Ubuntu 14.04 系统上,所以我很确定它就在那里。

这是我的测试扩展:

0 投票
1 回答
162 浏览

c - Does the dart VM impose restrictions on the stack memory size of a native extension?

I'm learning to write a native extension and I noticed an odd occurrence. When I allocate a multidimensional array and access it like so: (excuse any messy C code and bad practices I might be using unless they're likely the cause of my error. My C is not-so-great)

I get a segmentation fault if I do something like

But If I allocate the table like so:

Then everything works fine. Why might this be?