国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

在java里面調用CUI程序的方法

瀏覽:3日期:2024-06-23 16:25:05
內容: 在java里面調用CUI程序的方法問題描述:該函數在win平臺上面調用不是很成功,GUI會可以調出來,但可能和屏蔽調其中的一些用到CUI的功能,而調用CUI如masm.exe是很不成功,出現一個黑屏,沒用內容,或者根本不有結果。其程序如下:class RunThread{ Process t ; public void run(){ try{ t = java.lang.Runtime.getRuntime().exec('c:masm.exe'); }catch(java.io.IOException e ) { System.out.println(e); }}}/************************************************/class RunExeNative{ public static void main(String args[]){ RunThread RT = new RunThread(); RT.run(); }}下面是JNI + C 的本地化的實現方法:寫一個:CallExeNative.h步驟如下:step one :/**** CallExeNative.java ****/編寫CallExeNative.java文件import java.lang.*;class CallExeNative{ public native static void CEN(); static { System.loadLibrary('CallExeNative'); }}在命令行里用:javac CallExeNative.javajavah CallExeNative然后你就多了一個 :CallExeNative.h它的文件如下:/* DO NOT EDIT THIS FILE - it is machine generated */#include /* Header for class CallExeNative */#ifndef _Included_CallExeNative#define _Included_CallExeNative#ifdef __cplusplusextern 'C' {#endif/* * Class: CallExeNative * Method: CEN * Signature: ()V */JNIEXPORT void JNICALL Java_CallExeNative_CEN (JNIEnv *, jclass);#ifdef __cplusplus}#endif#endif這個文件不用改。下面要寫一個CallExeNative.c文件:該函數的功能是將你的CUI文件調出來文件如下:#include 'C:CallExeNative.h'/*在你的機器上調試時可能要修改該文件路徑*/#include #include #include JNIEXPORT void JNICALL Java_CallExeNative_CEN(JNIEnv* env, jclass cl){ char prog[80]; printf('Hello CallExeNative!n'); printf( 'Enter name of program to exec: ' ); gets( prog ); _execl( prog, prog, '_execl', 'two', NULL );}現在visual c++ 的cl 功能在命令行下c:>cl /LD CallExeNative.c之后你 會發現生成了一個CallExeNative.dll文件,現在寫RunExeNative.java文件:/*includeCallExeNative.hCallExeNative.dll*/import java.lang.*;/*load a native method : to call a native file*/class CallExeNative{ public native static void CEN(); static { System.loadLibrary('CallExeNative'); }}/************************************************/class RunExeNative{ public static void main(String args[]){ CallExeNative CEN1 = new CallExeNative(); CEN1.CEN(); }}同樣用javac RunExeNative.javajava RunExeNative之后你就會發現提示你輸入CUI文件的路徑 你輸入路徑即可!說明:要注意的是CallExeNative.h和CallExeNative.dll應該都在同一個文件夾(我的是在c:jdk1.3.1_11bin).不足之處:破壞了java的移植性!而且你想想看,同樣的功能在VB下用Shell(filepath,windowstyle)很容易就搞定,你還會用java嗎?我寫這篇文章的目的是希望大家找到一種更好的方法來實現這個功能。 Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
標簽: Java
相關文章:
主站蜘蛛池模板: 国产99久久久久久免费看 | 国产91精品久久久久久久 | 欧美一区二区在线观看 | 亚洲天堂毛片 | 欧美日韩中文字幕在线视频 | 亚洲国产成人久久午夜 | 免费一级大片 | 亚洲免费视频网址 | 香港三级做爰大爽视频 | 三级韩国一区久久二区综合 | 免费看成人毛片日本久久 | 一级毛片免费播放 | 中文字幕或区 | 亚洲国产欧美国产综合一区 | 俺来也俺来也天天夜夜视频 | 欧美videos娇小 | 牛牛a级毛片在线播放 | 91精品一区二区综合在线 | 国产精品国产三级国产普通 | 成人在线网站 | 202z欧美成人 | 久久精品免费观看视频 | 色婷婷色综合激情国产日韩 | 91亚洲精品久久91 | 99精品欧美一区二区三区美图 | 免费在线一级毛片 | 亚洲第一激情 | 91日本在线精品高清观看 | 一级片日韩 | 韩国日本一级毛片免费视频 | 久久国产成人午夜aⅴ影院 久久国产成人亚洲精品影院老金 | 国产女人一区二区 | 国产毛片网站 | 国产精品自拍在线 | 久久久精品久久久久久久久久久 | 国产日韩欧美另类 | 日本一级特黄aa毛片免费观看 | 手机在线看a| 国产精品视频第一区二区三区 | 久久99国产精品久久 | 免费永久在线观看黄网 |