JNA调用window api中的MessageBox

用JNA调用C/C++,很方便,写了个很简单的例子。
例子是使用Eclipse CDT + MinGW开发的:
C代码,hello.c
#include  < windows.h >
#include 
" stdio.h "

void  say(){
    MessageBox (NULL, TEXT (
" 你好, Windows! " ), TEXT ( " HelloMsg " ),  0 );
}

将hello.c编译成libDLL2.dll,放进java的项目文件夹中,java调用方式
Java代码,dll.java
public   class  Dll {
    
public   interface  TestDll1  extends  Library { 
        TestDll1 INSTANCE 
=  (TestDll1)Native.loadLibrary( " libDLL2 " , TestDll1. class );
        
public   void  say();
}
     
public   static   void  main(String[] args) {
         TestDll1.INSTANCE.say();
     }
}

先写一个接口 TestDll1映射C的方法,再通过这接口调用 say(),在eclipse中编译运行这个java代码,可以看到弹出“你好,window!”的窗口。


341416.html

pengo 2010-12-23 22:53 发表评论

转载于:https://my.oschina.net/penngo/blog/12357

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值