最好的方式,用 *** 作系统api写个服务,用java做本地网络请求调用,再把你采集出来的数据,提取出来做处理就完了。要访问进程信息,用系统api也会有安全性考虑,但是完全敏耐可控的。把目标进程当服务进程的子进程启动,设置适合的权限,服务进程就能读取到子进程激拿明的信息。
1、在Windows的命令行 tasklist 可以获得进程列表你先CMD, 再执行tasklist 可以看到类似任务咐纯管理器里的进升猛程信息
2、JAVA要调用CMD命令衡笑咐, 用 Process process = Runtime.getRuntime().exec(command)
例如:查找某进程
Process proc = Runtime.getRuntime().exec("tasklist /FI \"IMAGENAME eq " + processName + "\"")
bufferedReader = new BufferedReader(new InputStreamReader(proc.getInputStream()))
String line = null
while ((line = bufferedReader.readLine()) != null) {
if (line.contains("QQ.exe")) {
System.out.printlns("找到了")
}
}
使用JNI调用WIN32 API ,先得到窗芦宴瞎口句柄,再得到窗口的RECT 先WindowFromPoint(point)再GetWindowRect(hwnd, &rect)返回的rect,就是窗口的left/top/width/height 这个不麻陪空烦、也不复杂,祥锋很简单的JNI。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)