ここに私のPSAPI.javaインターフェイスがあります:
import com.sun.jna.platform.win32.WinNT.HANDLE;
import com.sun.jna.win32.StdCallLibrary;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;
public interface PsApi extends StdCallLibrary {
public static abstract class PPROCESS_MEMORY_COUNTERS extends Structure {
public int cb;
public int PageFaultCount;
public int PeakWorkingSetSize;
public int WorkingSetSize;
public int QuotaPeakPagedPoolUsage;
public int QuotaPagedPoolUsage;
public int QuotaPeakNonPagedPoolUsage;
public int QuotaNonPagedPoolUsage;
public int PagefileUsage;
public int PeakPagefileUsage;
}
boolean GetProcessMemoryInfo(HANDLE process, PsApi pmem, int cb);
}
別のバージョン (要約なし):
public static class PPROCESS_MEMORY_COUNTERS extends Structure {
public int cb;
public int PageFaultCount;
public int PeakWorkingSetSize;
public int WorkingSetSize;
public int QuotaPeakPagedPoolUsage;
public int QuotaPagedPoolUsage;
public int QuotaPeakNonPagedPoolUsage;
public int QuotaNonPagedPoolUsage;
public int PagefileUsage;
public int PeakPagefileUsage;
@Override
protected List getFieldOrder() {
// TODO Auto-generated method stub
return null;
}
}
関数を使用するには、GetProcessMemoryInfo()
変数を宣言する必要があります。
PPROCESS_MEMORY_COUNTERS pmem;
しかし、それはエラーを返します:
PPROCESS_MEMORY_COUNTERS を型に解決できません
PPROCESS_MEMORY_COUNTERS 構造を適切に含める方法は? ありがとう。