问题标签 [native-code]

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 回答
549 浏览

android - 使用 javascript 来自网络浏览器的 Android 本机代码

是否可以在默认的 android 浏览器中使用 javascript 访问 android 本机代码?

问候, 多姆

0 投票
2 回答
997 浏览

c# - 使用 C# 或在 C# 中的本机 C++ 性能

我想知道以下两种情况是否对本机 C++ 代码具有相同的性能影响(如果有任何性能影响的话)。

假设我有一个cpp_calc()正在做一些计算的函数,并且是用原生 C++ 编写的。此外,还有cs_show_gui_stuff(),它是用 C# 编写的。

现在,以下哪种情况会恶化本机 c++ 性能(如果有任何性能损失的话)?

  1. 创建一个在本地 C++ dll中运行cs_show_gui_stuff()和调用的 .Net (C#) 应用程序,使用或将 C++ 转换为 COM DLL。cpp_calc()DllImport

  2. 通过将 C# 代码放置在 .Net COM DLL 中来创建在 C++中实现cpp_calc()并运行的 C++ 应用程序。cs_show_guid_stuff()

谢谢 :-)

0 投票
2 回答
2304 浏览

c# - 将 .NET 程序集编译成 x86 机器码

有没有办法将.NET 程序集编译为本机代码(即x86)输出,即没有MSIL。

据我了解,如果您只是将 x86 指定为体系结构,这只会更改 PE 标头以将其指向 JIT,但程序集仍将包含 MSIL 并将根据需要进行 JITTed。

NGen 确实为指定的体系结构生成程序集文件,但它不是编译器,它旨在提高性能,但您仍然需要原始 DLL,本机映像的存在仅用于避免 JIT 编译程序集,但您无法获得那个原生图像并使用它,可以吗?

那么,有什么方法可以真正从.NET 编译为本机代码?

0 投票
2 回答
877 浏览

java - 在Java中的dll中创建类的对象

在 C++ 中有一个包含类定义的第三方 dll,我必须在 Java 中使用它。我完全了解 dll 中的公共方法。现在要使用这些,我有点使用包装 C++ 程序,它创建对象并在需要时调用 dll 中的函数。我使用 JNI 将这个 C++ 代码与 Java 接口。有没有其他有效的方法来做到这一点。即创建一个类的对象并直接使用 JNI 或 Java 中的任何其他库来使用它的功能

0 投票
3 回答
10754 浏览

google-chrome - 如何在 Chrome 中启用本机客户端?

我想在 chrome 中启用本机客户端支持。
我去了 about:flags 并启用了它,但它仍然无法正常工作。

0 投票
3 回答
760 浏览

java - 带 gui 的 IPC(Java 和本机代码)

我的申请由两部分组成 -

Java中的一些GUI逻辑。本机代码(主要是 Delphi)——GUI 实现本身。

Java 使用本机代码进行琐碎的操作,例如打开窗口和响应用户输入事件 - 实现是通过 JNI 完成的。

我有兴趣将双方划分为不同的进程 - 在不挂 gui 的情况下在它们之间实现 IPC 的最佳方法是什么?我倾向于 TCP 套接字或共享内存,但在我深入研究之前,我很想听听一些意见。性能和简单的实现是我主要关心的问题。

提前致谢。

0 投票
1 回答
181 浏览

compiler-construction - 本机面向对象的编译器库

最近我一直在考虑编写我自己的语言——这是我一直想做的事情。我在使用 .Net System.Reflection.Emit 库为简单语言编写解析器/编译器方面有一些指导经验。我真的很喜欢使用那个库,特别是因为它专注于面向对象的语言设计。

问题是我宁愿它是一种母语。所以我想知道:是否有任何好的/简单易用的库专注于为面向对象的语言(如 System.Reflection.Emit)发出代码,但实际上会发出本机代码而不是托管代码?

注意:我专注于实际的本机代码生成,而不是解析。此外,如果库可以从 C++ 轻松访问,那将是更可取的,但任何语言都可以使用。

0 投票
1 回答
79 浏览

java - 为安卓制作包

问题描述

我正在为使用本机代码 (C)的Android (JAVA)编写模块。在JAVA中,我创建了类“MyClass.java”并在那里实现所有函数和类,我也从该文件调用 loadLibrary 函数。

现在我想在 C 中为 Android JAVA 构建类似 dll 的东西,以便将它提供给其他用户,他们可以使用我的类和函数。

0 投票
1 回答
460 浏览

c++ - 如果有多个以太网适配器,您个人如何通过 MAC 地址识别工作站?

我必须通过必须稳定的唯一标识符来识别工作站。我决定使用 MAC 地址,但是如果有多个以太网适配器(其中一些可能属于安装的 VMWare)我该怎么办?我该选择哪一个?

我使用GetAdaptersInfo函数并处理IP_ADAPTER_INFO结构。

您是否应该选择另一种方法来获得唯一(且稳定)的工作站 ID,而不是使用 MAC 地址?

这很可惜——对我来说,工作站是“只读的”。我无法自动生成一些唯一标识符来在工作站上创建、存储和重用。

0 投票
3 回答
14593 浏览

android - 如何在 Android 项目中使用 ARM 汇编代码?

我对 Assembly 和 ARM 不是特别有经验,但我能够在其中编写一些例程,我想看看它们如何在配备 ARM 的 Android 设备 (Nexus S) 上运行。将汇编代码文件包含到 Android 项目中的过程是什么?我只能从本机代码或 Java 中调用它吗?