难题!关于JNI 看书也没有看明白JNI。晕。。UP 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果这个程序是用jni调用dll 那么就应该是在java class中load你的dll库所以你不应该反编译dll文件 而应该反编译java的class文件 一般C++写的DLL很难反编译成C++代码,只有分析汇编。 to: purejd(泪流满面) 我当然分析了那个class,是一个applet,其中load的就是那个jni.dll,分析了jni.dll,调用了另外已有的dll。现在的问题是jni.dll如何调用那个dll我不知道 用过jni的人都应该知道,JAVA不能直接使用本地的DLL,必须通过c++自己写一个JNI来调用本地的DLL,我就是想知道那个jni怎么实现的? 如果你要调用jin 要自己想用c++写一个dll,好像java的jni只支持c 和 c++的dll写一个java的调用 给你一个例子:public static native void Mac(byte[] data,byte[] Kc,byte[] Gene1,byte[] Gene2,byte[] mac,int len);//定义本地方法 static { try { System.loadLibrary("MAC");//调入本地库 } catch(UnsatisfiedLinkError e) { }本地库要放在当前运行目录下. 只有jni.dll而没有工程?这就难了。 其实也就是说在c中怎么调用别的dll?是吧? 是啊,不是java的问题,这帖子是不是该放到C++版去。没有文档没有源码,真是没办法?只有找找哪里有读汇编程序的高手了:( java 窗口移动的问题 showMessageDialog如何设置其显示的位置 在java.swing.*;或.java.awt.*;中有没有表示表格控件的窗口控件!! 属性的继承 对字符串的坼分! 迷茫 JBuilderX的问题 关于垃圾回收GC的几个问题~ (菜鸟问题,送分) 如果使窗口中的控件自动调整大小??? Java里最好的RAD开发工具是哪个? 如何在java中调用dos命令 100分求解 j2se1.5新特性(披着老虎皮的tiger?)
所以你不应该反编译dll文件 而应该反编译java的class文件
写一个java的调用 给你一个例子:
public static native void Mac(byte[] data,byte[] Kc,byte[] Gene1,byte[] Gene2,byte[] mac,int len);//定义本地方法
static
{
try
{
System.loadLibrary("MAC");//调入本地库
}
catch(UnsatisfiedLinkError e)
{
}本地库要放在当前运行目录下.
而没有工程?
这就难了。
是吧?