求解关于JNative在64位服务器上不能加载自身动态库的问题

问题描述

在当地机上一切正常,但在64位服务器上出现了下面的问题,开发运行环境和当地机一样:请大家帮帮看看,谢谢!异常:---------------------------------------start-----------------------------------------Exceptioninthread"main"java.lang.IllegalStateException:JNativelibrarynotloaded,sorry!atorg.xvolks.jnative.JNative.<init>(JNative.java:512)atorg.xvolks.jnative.JNative.<init>(JNative.java:440)atcom.test.mediainfo.MediaInfo.New(MediaInfo.java:99)atcom.test.mediainfo.MediaInfo.<init>(MediaInfo.java:88)atcom.test.mediainfo.TestMediaInfoClass.main(TestMediaInfoClass.java:13)

代码如下:packagecom.test.jnative;importorg.xvolks.jnative.JNative;importorg.xvolks.jnative.exceptions.NativeException;importorg.xvolks.jnative.misc.basicStructures.AbstractBasicData;importorg.xvolks.jnative.pointers.Pointer;importorg.xvolks.jnative.pointers.memory.MemoryBlockFactory;/***SystemTime**typedefstruct_SYSTEMTIME{*WORDwYear;*WORDwMonth;*WORDwDayOfWeek;*WORDwDay;*WORDwHour;*WORDwMinute;*WORDwSecond;*WORDwMilliseconds;*}SYSTEMTIME,*/publicclassSystemTimeextendsAbstractBasicData<SystemTime>{publicshortwYear;publicshortwMonth;publicshortwDayOfWeek;publicshortwDay;publicshortwHour;publicshortwMinute;publicshortwSecond;publicshortwMilliseconds;/***分配内存,并返回指针*/publicPointercreatePointer()throwsNativeException{pointer=newPointer(MemoryBlockFactory.createMemoryBlock(getSizeOf()));returnpointer;}/***内存大小*/publicintgetSizeOf(){return8*2;}/***获取通过内存指针解析出结果*/publicSystemTimegetValueFromPointer()throwsNativeException{wYear=getNextShort();wMonth=getNextShort();wDayOfWeek=getNextShort();wDay=getNextShort();wHour=getNextShort();wMinute=getNextShort();wSecond=getNextShort();wMilliseconds=getNextShort();returnthis;}publicSystemTime()throwsNativeException{super(null);createPointer();}publicStringtoString(){returnwYear+"/"+wMonth+"/"+wDay+"at+"+wHour+":"+wMinute+":"+wSecond+":"+wMilliseconds;}publicstaticSystemTimeGetSystemTime()throwsNativeException,IllegalAccessException{//创建对象JNativenGetSystemTime=newJNative("Kernel32.dll","GetSystemTime");SystemTimesystemTime=newSystemTime();//设置参数nGetSystemTime.setParameter(0,systemTime.getPointer());nGetSystemTime.invoke();//解析结构指针内容returnsystemTime.getValueFromPointer();}publicstaticvoidmain(String[]args)throwsNativeException,IllegalAccessException{System.err.println(GetSystemTime());}}

服务器信息如下所示:

解决方案

本帖最后由 myaimit 于 2011-05-18 16:26:29 编辑

时间: 2024-11-24 21:08:13

求解关于JNative在64位服务器上不能加载自身动态库的问题的相关文章

在64位服务器上运行32位jdk及程序,相交与64位jdk程序的运行速度会变慢吗

问题描述 在64位服务器上运行32位jdk及程序,相交与64位jdk程序的运行速度会变慢吗 一个OA系统本来是用64位jdk,运行在64位系统上,现在用32位jdk运行在64位系统上,这样是不是比之前运行速度慢呢,感觉程序慢了... 解决方案 基本不会,差异微乎其微,因为实际上x64上运行32bit程序,cpu使用原生的32bit模式运行.

在64位服务器上,php长整型的表示

php中,对数据类型的转换可直接使用pack来完成,比如表示字符型,短整型.整型.长整型可分别使用参数c.s.i.N来表示,当然这里转换后的数据为二进制数据,是不可读的,为了能正常读取,可直接unpack来将数据从二进制流还愿成可读的字符类型. 以下为各各类型的实际长度. $uid = 1346563572; 长度为10,直接为字符类型来计算 echo strlen($uid); // 10 转换短整型,长度为2,当然这里超过了短整型的值范围,所以高位数据会丢失 echo strlen(pack

32位xp安装visual c#2010 想访问64位win7上的oracle10g数据库?

问题描述 32位xp安装visual c#2010 想访问64位win7上的oracle10g数据库? 32位xp安装visual c#2010 想访问64位win7上的oracle10g数据库,请问怎么实现?? 解决方案 win7安装oracle10g数据库win7 旗舰版 64位安装 oracle10g 32位win7 64位oracle10G 的安装 解决方案二: 按照好oracle驱动,直接就可以访问,你的服务器需要打开防火墙端口.

32bit-JNative的问题,提示32位DLL不能再64位平台上运行

问题描述 JNative的问题,提示32位DLL不能再64位平台上运行 我使用JNative调用的C++自己写的DLL动态库文件,我在测试项目中运行的毫无问题 ,使用语句输出位数信息是32位 Properties props = System.getProperties(); String bits=String.valueOf(props.get("sun.arch.data.model")); 但放到我的项目中报32位DLL不能在64位平台下运行 输出位数信息却变成了64 以下是错

环境-有关于openkinect的驱动安装到win7 64位系统上的问题

问题描述 有关于openkinect的驱动安装到win7 64位系统上的问题 由于openframeworks有关于ofxkinect的部分调用的驱动并不是openni而且openkinect,而openkinect则是在linux下应用比较多,在win7下应用比较少,但也并未说明不可以在64的系统上使用. 在下载后,试了下环境的配置,发现文件中提供的Xbox_nui_motor.inf并不是一个有效的驱动程序. 想知道这个问题如何解决 解决方案 这种的驱动都是向下兼容的,你说的问题没碰见过,可

c++-在VS.net2003中用C++写的项目,从32位迁移到64位机器上后遇到引用第三方库的问题

问题描述 在VS.net2003中用C++写的项目,从32位迁移到64位机器上后遇到引用第三方库的问题 在VS.net2003中用C++写的项目,从32位迁移到64位机器上后,原来引用的SDK/DXSDK第三方库中头文件包含VS.net2003中的Winsock2.h文件的路径错误,应该去"C:/ProgramFiles (x86)/""下去寻呼,但是他还去""C:/ProgramFiles/""路径去寻找,这个是什么造成的?怎么解决啊

centos sshd-阿里云 centos 6.7 64位服务器,sshd 远程服务 貌似有个漏洞

问题描述 阿里云 centos 6.7 64位服务器,sshd 远程服务 貌似有个漏洞 本人在阿里云 搭建了一个服务器,里面开启sshd服务. 为了登录方便,为sshd开启了PubkeyAuthentication yes,其他password方式关闭. 那么问题来了: 正常情况下,我使用secureCRT,使用正确的KEY,一切没有问题,能马上登录不用密码.但是有一次,我在secureCRT中错误的使用了其他的publickey,居然也登录到了我的服务器. 而且我还发现,我使用小米路由器(已经

在64位机器上使用plSQL连接Oracle的问题(SQL*Net not properly installed)

问题背景:         我在64位机器上了64位的oracle客户端.         然后装上PL/SQL Developer,但是连接oracle老报这个错:         Initialization error              SQL*Net not properly installed         OracleHomeKey:                OracleHomeDir: 解决办法:        点击打开链接 那个文件的下载也可以去这边:点击打开链接

视频打不开-OPENCV:部分视频在win7 64位系统上打不开

问题描述 OPENCV:部分视频在win7 64位系统上打不开 如题,小弟在做opencv图像处理的时候发现,在win7 32位系统上可以读的视频,换到win7 64位系统的平台上,有的视频就读不出来了.不知道是什么问题造成的,视频是用Gopro hero3 相机拍摄的,视频格式MP4,求解答 解决方案 安装下暴风影音等软件,将解码器装上看看. 解决方案二: 我的电脑上现在装了很多播放器,暴风影音.迅雷影音,realplayer,万能播放器,狸窝转换器等,解码器应该比较全了 解决方案三: 程序是