我自己现在有两个思路 1 Runtime.getRuntime().exe("cmd /c tasklist"); 2 sigar.jar 问题在于:第一种方式不稳定,而且这种方式如何在非windows系统下实现? 第二种方式,需要依赖dll文件和so文件,而且这些文件必须部署到jdk\bin,这样很不方便。 请教高手:1 可还有别的更好的思路? 2 第一种方式如何在非windows下实现 3 第二种方式,这些文件能不能不放到jdk\bin,而放到别的地方,用批处理指定路径也行。怎么做呢?
2 回答
慕娘9325324
TA贡献1783条经验 获得超4个赞
//简单地得到windows进程
#include <windows.h>
#include <tlhelp32.h>
#include <stdio.h>
void main()
{
PROCESSENTRY32 p;
HANDLE h;
h=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
p.dwSize=sizeof(p);
Process32First(h,&p);
do {
printf( "id=%.8x exename=%s\n ",p.th32ProcessID,p.szExeFile);
}
while (Process32Next(h,&p));
CloseHandle(h);
}
添加回答
举报
0/150
提交
取消