将 DLL 注入 Java

Posted

技术标签:

【中文标题】将 DLL 注入 Java【英文标题】:Swig a DLL into Java 【发布时间】:2011-05-31 20:22:14 【问题描述】:

有人知道是否可以使用 Swig 为带有捆绑 C 头文件的 DLL 生成 Java 接口?如果您有源代码 (http://www.swig.org/Doc1.3/Java.html),有很多教程描述了该怎么做。

【问题讨论】:

【参考方案1】:

即使您只有头文件和 DLL,您链接到的教程中的所有信息仍然是相关的。您所需要的只是标题和链接它的库。

那么你有两个选择。您可以让您的构建过程将 SWIG 生成的代码与现有 DLL 链接起来,或者您可以使用这样的东西:

%pragma(java) jniclasscode=%
  static 
    try 
        System.loadLibrary("mylibrarythatIonlyhaveaDLL");
        System.loadLibrary("swigmodule");
     catch (UnsatisfiedLinkError e) 
      System.err.println("Native code library failed to load. \n" + e);
      System.exit(1);
    
  
%

在您的接口文件中强制在 SWIG 生成的接口之前加载 DLL。

【讨论】:

以上是关于将 DLL 注入 Java的主要内容,如果未能解决你的问题,请参考以下文章

使用 C# 将 dll 注入当前进程

如何实现静态dll注入

dll注入器怎么用 看完你就知道了

dll注入器怎么用 看完你就知道了

将 dll 注入 Windows 10 记事本

在调用导入之前将挂钩 DLL 注入进程?