



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
源程序代码:1.systemProcess.javapublic class systemProcessstatic /调用本地代码编写DLL(动态连接库),process为C/C+生成的DLL文件名 System.loadLibrary(process);/声明所需要的本地方法public static native int processHandle()throws Exception; / 获取进程快照表的快照信息public static native boolean processData(int snapshot,dataProcess ds)throws Exception;/用来获取其他进程2.dataProcess.javaclass dataProcessString fileName;int PProcessID;int currentThread;int classBase;/在java中设置从本地代码中返回的数据public void setName(String name) /设置返回的进程文件名 fileName=name;public String getName() return fileName;public void setPProcessID(int PID) /设置返回的进程PID PProcessID=PID;public int getPProcessID() return PProcessID; public void setThread(int thread) /设置返回的进程开启线程数 currentThread=thread; public int getThread() return currentThread; public void setClassBase(int base) /设置返回的进程优先级classBase=base; public int getClassBase() return classBase; 3.process.cpp#include #include systemProcess.h#include #include #include void throwException(JNIEnv *env,char *cls,char *desc) jclass c; (env)-ExceptionDescribe();(env)-ExceptionClear();/抛出一个异常c=(env)-FindClass(cls);if(c) (env)-ThrowNew(c,desc);JNIEXPORT jint JNICALL Java_systemProcess_processHandle (JNIEnv *env, jclass cls)HANDLE snapshot; /获得某一时刻系统进程、堆、模块或线程的快照信息 snapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); return (jint)snapshot;JNIEXPORT jboolean JNICALL Java_systemProcess_processData (JNIEnv *env, jclass cls, jint snapshot,jobject dataProcess) PROCESSENTRY32 processListStr; jclass jcls; jmethodID jmid; jboolean return_value; processListStr.dwSize=sizeof(PROCESSENTRY32); /获的系统进程链表中下一个进程的信息 return_value=Process32Next(HANDLE)snapshot,&processListStr); if(!return_value) return false; /在本地代码中获取JAVA中对象所属的类 jcls=(env)-GetObjectClass(dataProcess); if(!jcls) /抛出一个异常 throwException(env,java/lang/Exception,unable find data class); return false; /在本地代码中获取JAVA类中的方法setName的标识号 jmid=(env)-GetMethodID(jcls,setName,(Ljava/lang/String;)V); if(!jmid) /抛出一个异常 throwException(env,java/lang/Exception,unable find dataProcess.setName); return false; /在本地代码中设定JAVA对象成员的变量 (env)-CallVoidMethod(dataProcess,jmid,(env)-NewStringUTF(processListStr.szExeFile); /在本地代码中获取JAVA类中的方法setPProcessID的标识号 jmid=(env)-GetMethodID(jcls,setPProcessID,(I)V); if(!jmid) /抛出一个异常 throwException(env,java/lang/Exception,unable find dataProcess.setPProcessID); return false; (env)-CallVoidMethod(dataProcess,jmid,processListStr.th32ParentProcessID); /在本地代码中获取JAVA类中的方法setThread的标识号 jmid=(env)-GetMethodID(jcls,setThread,(I)V); if(!jmid) throwException(env,java/lang/Exception,unable find dataProcess.setThread); return false; (env)-CallVoidMethod(dataProcess,jmid,processListStThreads); /在本地代码中获取JAVA类中的方法setClassBase的标识号 jmid=(env)-GetMethodID(jcls,setClassBase,(I)V); if(!jmid) throwException(env,java/lang/Exception,unable find dataProcess.setClassBase); return false; (env)-CallVoidMethod(dataProcess,jmid,processListStr.pcPriClassBase); return true;4.systemProcessTest.javapublic class systemProcessTest public static void main(String args) int snapshot=0; try snapshot=systemPcessHandle(); /获取系统进程快照信息的句柄 catch(Exception ex) while(true) boolean b=false; dataProcess ds=new dataProcess(); /对象实例化 try b=systemPcessData(snapshot,ds); catch(Exception e) if(!b) System.out.println(no Process show!); break; System.out.println(Process Name:+ds.getName(); /显示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年教师招聘之《小学教师招聘》综合提升试卷含答案详解(培优a卷)
- 国际节水农业示范合作创新创业项目商业计划书
- 动物源性食品新产品创新创业项目商业计划书
- 演出经纪人之《演出经纪实务》综合练习及答案详解(网校专用)
- 押题宝典教师招聘之《幼儿教师招聘》试题及答案详解(夺冠)
- 教师招聘之《幼儿教师招聘》考试黑钻押题附答案详解【考试直接用】
- 2025内蒙古呼伦贝尔选聘政务服务社会监督员9人笔试备考附答案详解(考试直接用)
- 2025年教师招聘之《幼儿教师招聘》题库必背100题附答案详解(突破训练)
- 2025年教师招聘之《小学教师招聘》能力检测试卷及答案详解【全优】
- 2025年教师招聘之《幼儿教师招聘》押题练习试卷及参考答案详解(巩固)
- 廉洁征兵培训课件
- 产品功能与使用说明手册
- 《颅骨骨折》课件
- 整体施工劳务服务方案
- DBJT13-119-2010 福建省住宅工程质量分户验收规程
- 反对自由主义-全文-原文
- 2025年计算机等级考试二级WPS Office高级应用与设计试题与参考答案
- 战略管理知到智慧树章节测试课后答案2024年秋华南理工大学
- 华电社招考试题库
- 《劳动工具的改进设计》六年级综合实践课件
- 村级换届业务培训
评论
0/150
提交评论