问题标签 [native-methods]

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

java - JNI UnsatisfiedLink 错误

所以我是 JNI 的新手,我正在关注一个简​​单的 hello word 示例,但我不断收到错误消息UnsatisfiedLinkError。我究竟做错了什么?这是我的 .h 文件:

.c 文件

java主类

java类

我不断收到此错误

我试过使用 System.load() 和 System.loadLibrary() 但我得到了同样的错误。

0 投票
1 回答
2226 浏览

java - JNI 无法将 Java double 转换为 jdouble

我正在尝试将 java 传递Double给 C++ 中的本地方法,该方法期望double作为输入参数。但是 JNI 包装器方法将参数保存为jobject而不是jdouble. 谁能告诉我如何解决这个问题。

jobject可以投到jdouble吗?

0 投票
2 回答
668 浏览

vb.net - 尝试使用 LoadImage 加载应用程序的图标,但函数返回 0

我正在尝试使用LoadImageWinAPI 函数加载应用程序的图标,但由于某种原因它总是返回 0。

我已阅读文档,但我无法理解我做错了什么。IconPtr除了尝试转换为Icon(因为IconPtr为 0)时,我没有任何例外。

NativeMethods班级:

使用示例:

0 投票
1 回答
4427 浏览

c# - 如何在类库中正确调用 P/Invoke 方法?

我在 Visual Studio 2015 解决方案中有多个项目。其中几个项目执行 P/Invokes,例如:

因此,我将所有 P/Invokes 移至单独的类库,并将单个类定义为:

在其他项目中,此代码称为:

所有编译都没有错误或警告。

现在在代码上运行 FxCop 会给出警告:

警告 CA1401 更改 P/Invoke 'SafeNativeMethods.GetIpNetTable(IntPtr, ref int, bool)' 的可访问性,使其不再从其程序集外部可见。

好的。将可访问性更改为 internal 为:

现在导致以下硬错误:

错误 CS0122 'SafeNativeMethods.GetIpNetTable(IntPtr, ref int, bool)' 由于其保护级别而无法访问

那么我怎样才能在没有错误或警告的情况下完成这项工作呢?

提前感谢您的帮助,因为我已经转了几个小时!

0 投票
0 回答
500 浏览

java - InetAddressImplFactory.isIPv6Supported() 的 Java 本机代码和实现

在下面的内部类中java.net.InetAddress,有一个本地方法 - isIPv6Supported()。假设,我使用 Springs 作为应用程序框架并将我的应用程序部署在 Weblogic 服务器中,问题是这个本地方法是否将由 Weblogic、Springs 或两者来实现。

我的猜测是它应该由两者实现,但是当我尝试搜索 Spring 源代码时,在任何地方都找不到这个方法,但理想情况下它应该在那里,否则 HTTP 连接将如何发生,这在之前调用lookupAllHostAddr()并查找 DNS必须在建立 HTTP 连接之前发生。

0 投票
1 回答
118 浏览

c# - How to use NativeMethods.GetUpdateRect on Mono on Lubuntu 16.04.1?

I'm trying to port a great Windows Forms program to Linux and get this error:

Is there a way to support C# calls to
NativeMethods:GetUpdateRect noon Mono on Lubuntu 16.04.1?


Edit:
Thanks, knocte, for your comment. This edit is to quote the bit of code that tries to reference this function (because comments don't allow any formatting):

0 投票
1 回答
5543 浏览

java - 奇怪的错误 java.lang.reflect.Method.invokeNative(Native Method) Android Studio 请回答

我正在为我的学校开发一个带有时间表和一个小计算器的应用程序

这是 manifest.xml:

这是启动器活动 activity_stundenplan.xml:

我在 Stundenplan.java 中做了一个 Intent:

问题是每次我在 Xperia Z3 上调试启动应用程序并按下按钮打开“Rechner”-Activity 时,应用程序都会关闭并显示以下错误:(抱歉格式错误)

我的 Rechner.java 和我的 activity_rechner 看起来像这样:

} ...

你能告诉我该怎么做吗?在我的手机和模拟器上也是如此 如果您有任何问题,请联系我!

PS:我必须在12月12日之前完成

0 投票
3 回答
528 浏览

php - 如果我尝试获取未定义变量的 sizeof 会发生什么?(PHP)

(PHP) 如果我尝试使用 sizeof 方法获取未定义的变量大小会发生什么?

喜欢:

我可以这样做吗?有什么价值?

在我的操场上总是遇到错误,但是当我尝试这段代码时:

未定义变量图片的大小

错误后我很好奇为什么我得到一个零值。对不起,我的英语不好

0 投票
1 回答
74 浏览

c# - 枚举和常量,它们是如何工作的?

在过去的几天里,我一直在互联网上寻找我的问题的答案,但没有运气。

因此,我试图了解常量在程序中的作用以及它们在类中的引用方式。

我一直在查看 Scintilla 的源代码,并且已经看到有几个值,例如:

这些位于 NativeMethods.cs 文件(此处)中。

我找到了解释其中一些是枚举的文档( here )。上述示例是自动换行的枚举(按单词、字符或空格换行)。

但是,有一些常量定义如下:

如果将它们用作枚举,我想知道为什么它们以2000.

不仅如此,在类的实现中(以SCI_SETWRAPINDENTMODESCI_GETWRAPINDENTMODE常量为例,值的使用方式如下:

这些值使用DirectMessage函数(类似于微软的SendMessage函数)发送到 Scintilla。但是,我要弄清楚的是应用程序如何从接收枚举值到(在这种情况下)包装文本。这与.dll文件有关吗?

所以我的问题是:

  1. 为什么有些枚举以如此大的引用(> 2000)开头?
  2. 应用程序如何知道如何处理这些值以产生所需的输出。
  3. 最重要的是,我如何创建自己的函数,可以通过向它们发送枚举值来执行操作,以及程序如何知道如何处理我的枚举值?

如果可能的话,我希望有人为我逐步分解并解释这里发生的事情的一般过程。

目前我的印象是枚举值被发送到.dll它调用方法的文件中,但我可能还差得很远。

0 投票
0 回答
66 浏览

c# - 用于前进和后退的 Windows 本机代码

我是 WPF 开发人员,我有 tecknet 无线鼠标,它有两个额外的按钮。

当我单击它们时,它会从浏览器中的历史记录来回导航。

有趣的是,它也适用于 Windows Explorer、Microsoft Outlook 和 VisualStudio。意味着我可以通过一个按钮转到以前访问过的文件或位置,并且可以通过另一个按钮进入当前位置。

我试图找到,他们如何在他们的驱动程序中实现这个,到目前为止还没有运气。如果你们知道这件事,请分享信息。我将在下一个应用程序中使用它。

谢谢,