1
J'essaie d'obtenir quelques informations de l'installation de Windows. J'ai été capable de le faire facilement avec le code ci-dessous en C# mais je cherche une implémentation Java.Comment utiliser kernel32.dll en Java
je dois avoir accès aux variables et méthodes suivantes:
internal struct OSVERSIONINFOEX
{
public Int32 dwOSVersionInfoSize;
public Int32 dwMajorVersion;
public Int32 dwMinorVersion;
public Int32 dwBuildNumber;
public Int32 dwPlatFormId;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)]
public String szCSDVersion;
public short wServicePackMajor;
public short wServicePackMinor;
public short wSuiteMask;
public byte wProductType;
public byte wReserved;
}
[DllImport("kernel32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern Boolean GetVersionEx(ref OSVERSIONINFOEX osVersionInfo);
[DllImport("kernel32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern Boolean GetProductInfo(
[In] Int32 dwOSMajorVersion,
[In] Int32 dwOSMinorVersion,
[In] Int32 dwSpMajorVersion,
[In] Int32 dwSpMinorVersion,
[Out] out Int32 pdwReturnedProductType);
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
internal static extern Boolean GetSystemMetrics([In] Int32 nIndex);
Vous aurez besoin d'un de [JNI] (http://docs.oracle.com/javase/8/docs/technotes/guides/jni /) * ou * [JNA] (https://github.com/java-native-access/jna). –
Merci, je l'ai compris. Je vais répondre à ma propre question bientôt. –