I was looking at alternatives besides JNI(Java Native Interface) to accessing Windows native API.
I came across two open source projects Java Native Access( will be referred to as JNA) and JNative. I initially started with JNA and also came across a useful tutorial for the same. Unfortunately I tried developing access to other Windows API and came across issues such as procedure not found. I was unable to find a suitable way for mapping the native data types like LPTSTR or LPDWORD.
After spending some frustrating hours I gave up and started with JNative. Using JNative is a breeze especially since
the project provides sample implementations for standard Windows DLLs like kernel32, GDI32, User32, Advapi32 etc.
These implemenation classes act as references for custom implementations. All in all I am for JNative project for abstracting Java Native access.