参考 http://www.cnblogs.com/AnnieKim/archive/2012/01/01/2309567.html
这片文章说的是 java 通过jni 调用 c 的dll,只不过环境用的是vs 作为我们java界当然喜欢一切开眼的东西了
这里改造成dev-c++这个开源c++ ide 来实现,其实就是工具上的差异
首先写java端不多说,建工程
public class APCluster {
public native int CallAPClusterDll(int data);
static {
System.loadLibrary("APClusterDllMedium");
System.out.println("I m in java");
}
}
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
new APCluster().CallAPClusterDll(65535);
}
}
C 端的
#include "APCluster.h"
#include <cstdlib>
#ifdef __cplusplus
extern "C" {
#endif
typedef int* (__stdcall *APCLUSTER32)(double*, unsigned int, bool);
JNIEXPORT jint JNICALL Java_APCluster_CallAPClusterDll(JNIEnv *env, jobject _obj, jint _arg_int)
{
printf("%d",_arg_int);
return 0;
}
#ifdef __cplusplus
}
#endif
重要步骤主要在C端
C 端:
把
%java_home%\include
%java_home%\include\
还有java端生成的 .h 文件的目录 一共三个都加入 c端的包含目录里来
c端主要就这些了
java端,声明完类后
cmd 到javasrc下
编译刚辞那个源文件
重要的步骤是 执行
javah APCluster
这个是生成c用到的头文件
然后把C生成的dll放在 系统路劲下 就是 环境变量 path 任何一个目录下 比如c:\\windows
运行test 试试看!!
- 大小: 36 KB
分享到:
相关推荐
本示例将详细介绍如何在Microsoft Visual C++(VC)环境中调用由Dev-C++编译的动态链接库。 首先,我们来看标题中的关键点:“vc调用dev-c++动态链接库dll示例”。这表明我们将使用VC作为客户端应用程序,调用由Dev...
Dev-C++是一款集成开发环境(IDE),主要用于C和C++编程。它以其轻量级、易用性和对初学者友好的特性而受到欢迎。这款IDE是开源的,由Bloodshed Software开发,后来由 Orwell Software 维护。Dev-C++集成了GCC编译器...
6. **集成开发环境**:Eclipse不仅限于Java,通过安装不同的插件,还可以支持C/C++、Python、Web开发等多种语言。 7. **市场扩展**:Eclipse Marketplace提供了大量第三方插件,用于增强IDE的功能,如Mylyn用于任务...
Dev-C++是一款轻量级的C++集成开发环境(IDE),尤其适合初学者学习和使用。本教程将详细介绍如何安装、编译以及调试程序,帮助你快速掌握Dev-C++的基本操作。 **一、Dev-C++的安装** 1. **下载安装包**:首先,你...
Dev-C++是一款面向初学者和专业开发者,支持C++和C语言的集成开发环境(IDE),它以其轻量级、易用性和免费的特点受到了广大编程爱好者的欢迎。本篇文章将详细介绍Dev-C++的特性和使用方法,帮助你快速入门C++和...
Dev-Cpp是一款经典的C++集成开发环境(IDE),特别适合初学者和专业开发者进行C/C++编程。这个软件是开源的,因此它是免费的,同时因其用户友好的界面和丰富的功能,深受许多程序员喜爱,特别是在蓝桥杯等编程竞赛中...
4. **调试器**:Dev-C++内嵌了GDB调试器,用户可以直接在IDE内部设置断点,单步执行,查看变量值,检查调用栈等,这对于学习和理解程序运行过程非常有帮助。 5. **可定制性**:用户可以根据自己的喜好调整编辑器的...
Dev-C++是一款经典的开源C++集成开发环境(IDE),它为初学者和专业开发者提供了编写、编译、调试C++程序所需的一切。这个软件安装包是绿色版,意味着它无需安装,下载后即可直接运行,避免了通常安装过程中可能携带...
Dev-C++是一款集成开发环境,特别适合初学者学习C++编程语言。这个压缩包"Dev-c++ 程序设计语言.rar"很可能包含了Dev-C++ IDE的安装文件以及相关的学习资料,比如C++程序设计的教程或者示例代码。下面我们将深入探讨...
DEV-C++是一款轻量级的C++集成开发环境(IDE),专为初学者设计,同时也适合有一定经验的程序员。它提供了简洁的用户界面,集成了编辑器、编译器、调试器等工具,使得C++程序开发过程更为便捷。这款软件的特色在于其...
在IT行业中,跨语言通信是一项常见的任务,尤其是在Java和C++这两个广泛应用的编程语言之间。本文将深入探讨如何使用Java通过JNI(Java Native Interface)来调用C++编写的动态链接库(DLL)方法,以实现Java与C++的...
Java调用C++ DLL文件是跨语言编程中的一个重要应用场景,特别是在既有Java代码库又有C++动态链接库的情况下。本文将详细讲解如何在Java程序中调用C++编写的DLL文件,以及一个可用的示例。 首先,理解Java与C++交互...
Dev C++是一款集成开发环境(IDE),主要用于编写C和C++程序。这款软件因其轻量级、免费且易于上手的特性,在初学者和教育领域中广泛应用。标题和描述中的"dev c++ dev c++ dev c++"可能是强调或者重复表示Dev C++这...
Eclipse 是一个著名的开源集成开发环境(IDE),广泛用于Java编程,同时也支持其他语言如C/C++, Python等。"eclipse-jee-2018-09-win32-x86_64.zip" 是Eclipse针对Windows 32位和64位系统的2018年9月版本的下载包。...
Dev-C++是一款轻量级的C++集成开发环境(IDE),特别适合初学者学习和使用。这个"devcpp-4.9.9.2安装程序"是该软件的一个特定版本,用于在计算机上安装该版本的开发环境。NOIP,全称全国青少年信息学奥林匹克联赛...
Eclipse平台是用Java编写,因此它可以跨平台运行,但“win32-x86_64”表明该版本是为64位的Windows系统量身定制的,能够充分利用多核处理器和大量内存,以实现更流畅的开发体验。 1. **安装与配置**:下载并解压...
无论是JNI还是JNA,都需要对C/C++和Windows API有一定的了解,因为DLL的函数签名、参数类型和调用约定等都需要正确地映射到Java代码中。同时,需要注意的是,这种方式可能会引入平台依赖性,因为DLL是Windows特有的...
其中一种方案是使用Java Native Access (JNA) 来调用通过C++封装的C# DLL文件。 **步骤详解:** **1. 创建C# COM组件:** - **新建项目:** 在Visual Studio中创建一个新的类库项目,并命名为`COMTest`。 - **...
在Java中调用DLL文件主要通过Java Native Interface (JNI)、JAWINJNative和JNA等技术来实现。这些技术允许Java程序与本地代码进行交互,从而实现对DLL文件的调用。 #### JNI (Java Native Interface) JNI是Java...
3. **配置环境**:在首次使用时,可能需要配置编译器路径和环境变量,确保Dev-Cpp能正确识别和调用GCC。 4. **更新与维护**:由于Dev-Cpp是一个较老的项目,可能无法支持最新的C++特性。你可能需要寻找替代的IDE,...