JNI DLL 和SOCKET的问题!

问题描述

我想问,我用JNI,那么写好cpp文件后,生成的dll文件是什么文件?就是dll到底是什么?我看了百度百科也不懂,是不是把dll放到java项目下就可以把cpp和.h文件给删了呢????而且我能不能在dll文件里面定义socket和别的进程通信呢???

解决方案

解决方案二:
dll是动态链接库,你可以用vc新建dll工程,把.h和.cpp文件加入工程编译,生成dll之后只需要dll文件就可以了。
解决方案三:
引用1楼rumlee的回复:

dll是动态链接库,你可以用vc新建dll工程,把.h和.cpp文件加入工程编译,生成dll之后只需要dll文件就可以了。

在dll中写socket完全没有问题,弄不懂的是socket编程java完全可以做到,干嘛要在dll中做呢。建议dll中只做java做不了的事情。
解决方案四:
DLL做个不恰当的比喻,它就如jar包一样,如果使用socket来做进程之间的通信,完全可以用javasocket类来做,不过要注意不同语言之间的基本数据类型转换。

时间: 2024-10-29 17:20:26

JNI DLL 和SOCKET的问题!的相关文章

有关c# 调用vc++编写的非托管DLL、socket编程等相关知识的讲的比较详细的书籍

问题描述 有关c# 调用vc++编写的非托管DLL.socket编程等相关知识的讲的比较详细的书籍 学习c# 调用vc++编写的非托管DLL.socket编程等相关知识的讲的比较详细的书籍都有哪些?(最好是基于VS2008的) 解决方案 c#调用非托管C++生成的dllc# 调用 C++ 非托管 DllC#调用非托管dll 解决方案二: 这样一个知识点,最好是 Baidu/Google 查找来解决 书上的内容,没有网络上的丰富

第十八章-Delphi客户服务器应用开发(三)(1)

3. 安装的软件项目 当你安装InterBase SQL Link驱动程序,下列项目将被安装于你的工作站上. 表18.7 安装的文件名 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 项 目 描 述 ────────────────────────────────────── SQLD-IB.DLL 包含InterBase驱动程序和支持文件的动态链接库 SQLINT32.DLL INTRBASE驱动类型 加在配置工具的驱动管理程序中以配置基本的Borland Int

在C#中调用Java代码

到IKVM官方网站下载IKVM需要的组件 ikvm-0.40.0.1.zip ikvmbin-0.40.0.1.zip openjdk6-b12-stripped.zip 解压ikvm-0.40.0.1.zip,并将%IKVM_HOME%\bin添加到path中.此处的%IKVM_HOME%是指解压后ikvm的主目录. 到Debian IKVM下载IKVM.OpenJDK.ClassLibrary.dll. 或者到rayfile去下载data.tar.gz.这个文件可以直接用winrar解压.

在Java中使用VC++组件

介绍JNI是我喜欢的java编程框架:它让你你自由的使用本地编写的代码.例如,如果你想要在你的java程序中使用Windows API(不如说dll),那么你就要用JNI. Java最受欢迎的特性就是它的平台无关性.但是,有时候这一特性也会使你将Java程序与本地平台整合变得困难. 例如,在我们的工程中,将消息添加到数据库之前,我们使用MSM Q(Microsoft Messaging Que)的队列机制来维护消息(为了避免消息丢失).Microsoft提供了MSM Q API,它是Window

深入CSocket编程之阻塞和非阻塞模式

本文适合初中级读者阅读 有时,花上几个小时阅读.调试.跟踪优秀的源码程序,能够更快地掌握某些技术关键点和精髓.当然,前提是对这些技术大致上有一个了解. 我通过几个采用 CSocket 类编写并基于 Client/Server (客户端 / 服务端)的网络聊天和传输文件的程序 ( 详见: 源代码参考 ) ,在调试这些程序的过程中,追踪深入至 CSocket 类核心源码 Sockcore.cpp , 对于CSocket 类的运行机制可谓是一览无遗,并且对于阻塞和非阻塞方式下的 socket 程序的编

C#调用Java方法(详细实例)

原文:C#调用Java方法(详细实例) C#可以直接引用C++的DLL和转换JAVA写好的程序.最近由于工作原因接触这方面比较多,根据实际需求,我们通过一个具体例子把一个JAVA方法转换成可以由C#直接调用的DLL C#调用c++ C#调用C++的例子网上很多,以一个C++的具体方法为例. C++代码 // 获取一帧图像数据 MVSMARTCAMCTRL_API int __stdcall MV_SC_GetOneFrame(IN void* handle, IN OUT unsigned ch

学习ShellCode(一)

前几天看了看x的shellcode,有很多东西部是很懂,今天找了找在安全焦点http://www.xfocus.net/找到一个高人写的,看了看思路,写得很不错,所以贴出来大家看看,以方便以后学习用阿! ? 这个是通用的shellcode,自己在vc++下编译一下! /*??????????? 使用C语言编写通用shellcode的程序出处:internet修改:Hume/冷雨飘心测试:Win2K SP4 Local */#include #include #include #define? D

请求“System.Net.SocketPermission, System, Version=2.0.0.0, Culture=neutral, Public

问题描述 在执行用户定义例程或聚合"SendSisenMessage"期间出现.NETFramework错误:System.Security.SecurityException:请求"System.Net.SocketPermission,System,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089"类型的权限已失败.System.Security.SecurityException:在

急求vb.net 电子书,纸质书等学习资料

问题描述 vb.net入门经典什么的就不要了,买过了,说实在的意义不大,都是介绍控件的用法.希望还有其他方面的知识,例如线程,dll,socket,各种各样都可以 解决方案 本帖最后由 bzyhd 于 2015-10-08 15:40:17 编辑解决方案二:这个书上应该有吧啊.