jnative调用delphi的DLL文件
1.下载JNative的包
JNative-1.3.2下有三个文件:JNativeCpp.dll,libJNativeCpp.so,JNative.jar。
JNativeCpp.dll拷到windows/system32目录下
libJNativeCpp.so为Linux中使用的文件
JNative.jar扩展包拷到%JAVA_HOME%\jre\lib\ext下或者导入到工程中
2.Jnative中使用到的一些类和方法
org
.xvolks
.jnative
.Jnative
: 装载dll文件,定位函数 如:Jnative native=new Jnative("dllName");
JNative
(),setParameter(),setRetVal(),getRetVal()
etc.
org
.xvolks
.jnative
.pointers
.Pointer: 替代本地函数中的的指针,需要先申请一块内存空间,才能创建,一般使用MemoryBlockFactory
利用工厂模式进行创建.
Pointer(),dispose()
org
.xvolks
.jnative
.pointers
.memory
.MemoryBlockFactory : 申请一块内存空间
createMemoryBlock()
org
.xvolks
.jnative
.exceptions.NativeException
: 抛出装载,定位等方面的异常
org
.xvolks
.jnative
.Type
: 列举和管理Jnative
需要的不同的数据类,一般需要传值的时候指定所传值的类型和函数的返回值
3.使用方法
3.1.
加载dll文件
JNative可使用两种方式加载dll文件:
使用System.loadLibrary
加载
使用此方法可加载系统目录中的dll文件。可以先把dll文件复制到system32
目录下,使用文件前缀名作为参数来加载dll文件。
使用System.load
加载
此方法参数为dll文件全路径名。
3.2.
调用函数
1、首先创建JNative对象:
JNative jnative = new
JNative(dll文件名, 函数名);
2、设置返回值类型:
jnative.setRetVal(Type.INT);
3、设置参数
jnative.setParameter(0,
Type.STRING, …); //设置第一个参数为字符串
jnative.setParameter(1,
Type.INT, String.valueof(…)); //设置第二个参数为整数
4、执行
n.invoke();
5、获取返回值
Integer.parseInt(jnative.getRetVal());
4.一个简单的例子:
import org.xvolks.jnative.JNative;
import org.xvolks.jnative.Type;
import org.xvolks.jnative.exceptions.NativeException;
public class JNativeTest {
public static final int messageBox(int parentHandle, String
message,
&nb
相关文档:
如何在Delphi里面利用Word的VBA代码进行一些总结。
1、 生成VBA代码。Word本身具有很强的可扩展性,尤其是支持用户自定义功能,其实现
的主要方式就是通过VBA代码来实现的。在“工具->宏->Visual Basic编辑器”里面就可以看
到具体的宏代码,可以直接进行编辑。而且还可以使用录制宏的功能自动 ......
这是一个实例:
procedure TMainForm.Button1Click(Sender: TObject);
var
arr:array of array of string;
begin
setlength(arr,2,3);
arr[1,2]:='this is a test';
setlength(arr,0,0);
setlength(arr,4,5);
showmessage(arr[1,2]);
end;
声明一个二维数组的方法是� ......
(一) 使用动态创建的方法
首先创建 Excel 对象,使用ComObj:
var ExcelApp: Variant;
ExcelApp := CreateOleObject( 'Excel.Application' );
1) ......
Delphi中为DBGrid控件添加色彩
2005-08-08 09:13作者:小刀轻舞出处:天极网责任编辑:方舟
添加不同颜色到TDBGrid组件中将会增强组件的显示外观和区别数据库中不同内容的行或列。
TDBGrid组件是一种非常棒的用来显示数据内容的组件,本文的重点将用来解释---如何在TDB ......