问题标签 [native]

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

c++ - Android 平台上的原生 C/C++ 代码

我对 Android 平台上的原生 C/C++ 有两个问题:

  1. 设备制造商是否可以在 Android 平台上开发原生 C++ 应用程序?

  2. 如何在 Android 平台上开发自己的具有上层 Java 前端/API 的原生 C++ 应用程序/库?

0 投票
1 回答
1236 浏览

c++ - 无法在 GlowCode x64 中加载符号

这个问题可能太特定于应用程序,无法在 SO 上出现,但这里有。

我正在尝试使用 GlowCode-x64 6.2 分析一个简单的本机 c++ 应用程序。

问题是无论我在“选项->符号服务器和搜索路径”中设置哪些设置,符号都不会加载。我的 .pdb 文件也与 .exe 文件位于同一个文件夹中。

进入“运行->挂钩”菜单并添加模块时,我总是在“地址”列中看到“未加载” 。

我已经多次阅读了启动教程,并且每一步都遵循它。

我什至尝试过使用 AQTime6 分析相同的程序,效果很好。所以我知道调试信息在那里。

我还记得 2 年前在我的 32 位笔记本电脑上使用 GlowCode,并立即让它工作。

非常感谢“再次阅读手册”之外的任何帮助。

编辑:

只是想指出我的应用程序是使用 VS2005 SP1 编译器构建的。

编辑2:

刚下班回家,在家里用Win32试试GlowCode。像魅力一样工作。

0 投票
3 回答
915 浏览

c++ - 使 C++ 库可用于 .Net

我需要制作一个可用于 .Net 语言(例如 C#)的大型 c++ 库。

该库包含大量可以分为两组的类。Refrence 计数类,它实现了 IRefCounted 抽象类并使用工厂方法来创建它们,并且只是使用 new/delete 的普通类。

此外,还有许多简单的功能。

最初,我只是打算为 c++/clr 中的所有内容编写包装类。但是,希望生成的包装库可以在 Mono 上运行。重新编译库和包装器以针对每个平台很好,但问题是 c++/clr 似乎只能针对 Windows,因为没有编译器可以针对其他平台,因此包装器代码无法在其他平台上工作。 ..

我在这里错过了什么(比如如何在 x 平台上运行 c++/clr 指南)还是有一种替代方法可以使所有 c++ 函数、结构和类对 C# 可用?

编辑: avaible 我的意思是可以在我的 c++ lib 中使用,例如我有

然后在 C# id 中希望能够像普通类一样使用它,例如

但是我也这样做了,我无法编辑 c++ 库,任何事情都必须作为现有类和函数的包装器来完成。

0 投票
1 回答
988 浏览

java - 在不同的插件中分离 DLL 和本机调用

我想将一些 DLL 从相关的本机 JNI 类中分离出来。

插件:

  • 在插件 A 中,加载插件时会放置和加载 dll。
  • 在插件 B(依赖于 A)中,放置了 JNI 类,其中包括对 A 中 DLL 的本机方法调用。

在运行时我得到一个 UnsatisfiedLinkError 因为找不到 JNI 类。我尝试通过更新清单文件来更新类加载器逻辑:

插件 A:

插件 B:

但这也行不通。你知道解决办法吗?

编辑:

清单 A:

清单 B:

0 投票
2 回答
922 浏览

c# - 是否有访问 C++ 本机 COM 函数以与 C# 互操作的最佳实践?

是否有访问 C++ 本机 COM 函数以与 C# 互操作的最佳实践?

例如,如果我有 100 个与核心窗口组件交互的 C++ 方法(基本上是本机库)。

我想基本上用 C# 为这些 C++ 方法制作一个包装器,所以我所有新雇用的员工都可以使用它而不是 C++ 等。C++ 代码是遗留的,让我害怕,所以我只想处理一次。每种方法的方法是否都有相应的 C# 方法?事实上,还有其他方法可以做到这一点吗?

我可以有某种包装子系统吗?你们一般是怎么做的?

另外,是否有任何性能考虑等?

0 投票
4 回答
2608 浏览

java - 从 Java 访问本机代码的最快方法是什么?

从 Java 调用本机库的最快方法是什么?

我所知道的是

  • NativeCall - 我们目前使用的
  • JNA - 没用过,但看起来很合理
  • JNI - 看起来写起来很可怕,但如果我们得到速度,我们会这样做
0 投票
1 回答
1018 浏览

wpf - 如何在 Windows XP 上获得 WPF 小部件的“本机”外观?

我刚刚开始玩WPF。

我注意到,虽然有些小部件会自动获取本机外观和感觉(例如,按钮、菜单),但有些则不会(例如,标签、面板和窗口具有白色背景)。

如何在 WPF 中默认使所有小部件看起来正常?

0 投票
4 回答
21495 浏览

java - 为什么我会收到带有本机代码的 UnsatisfiedLinkError?

我有一个名为 HelloWorld.so 的库和一个包含以下内容的程序 HelloWorld.java:

现在,当我尝试运行 HelloWorld.java 时,出现此错误:

有小费吗?

0 投票
3 回答
1640 浏览

.net - 如何集成/混合托管和非托管代码

已经有使用本机代码开发的项目。
现在在一个小模块中使用 C++-CLI 中的 SQLSMO,我使用了托管代码。

如何将托管代码与本机代码集成?

0 投票
2 回答
946 浏览

language-agnostic - 在两种相关技术的背景下,“原生”是什么意思?

有问题的场景与备受诟病的Microsoft Jet 数据库引擎有关。断言是数据访问对象(DAO) 数据访问技术是 Jet 的“原生”,这意味着通过 DAO 模型创建对象优于通过在Microsoft Access中执行的 SQL 代码执行相同操作用户界面。

此外,有人断言,如果您无法通过 DAO 创建某些东西,那么根据定义,它不是 Jet 的“原生”。

对我来说,这个“原生”的定义似乎放错了地方。有许多 Jet 对象,出于历史和 Microsoft 政治原因,在 DAO 中省略或仅部分实现(CHECK约束、固定宽度数据类型、DECIMAL数据类型、可压缩数据类型等),但包含在 Jet 的 SQL 中数据定义语言(DDL)。直觉告诉我,Jet SQL DDL 应该被认为是 Jet 引擎的“原生”。

所以我的问题是:为什么一项看似外部的技术 (DAO) 会被视为“本地”,而另一项看似内部的技术 (SQL DDL) 会被视为“非本地”?我是否应该为某些东西是“本地的”还是其他东西而烦恼?