Gets the 4-byte 32-bit binary volume serial number of a Windows disk drive assigned when it is formatted to provide and almost unique id.
Don't confuse this with the volser(, the String name, or the manufacturer's disk serial number assigned to a hard drive at the factory.
Uses JNI and C++ native code.
Consists of java and JNI you include in your own code.
You can test with
C:
CD /com.mindprod.volser
java.exe com.mindprod.volser.Volser
and ensuring nativevolser.dll is on the path, e.g. in the
current directory. YOU MUST MANUALLY Extract NATIVEVOLSER.DLL and put it on the path. See http://mindprod.com/jgloss/path.html
To use getVolser, you need three pieces of code in your class:
1. an import,
2. a Static init to load the JNI library
3. a call to the getVolser native method
i.e.
import com.mindprod.volser.Volser;
static
{
// get DLL loaded from somewhere on java.library path.
System.loadLibrary( "nativevolser" );
// if have troubles change this code to use
// System.load( "E://com//mindprod//volser//nativevolser.dll" );
/**
* test harness
*
* @param args not used
*/
public static void main( String[] args )
{
// Needs drive letter with colon and trailing backslash
final int volser = Volser.getVolser( "C://" );
System.out.println( "4-byte Volume serial number for drive C: is " + Integer.toHexString( volser ) );
} }
Volser does nothing much by itself, other than a debugging
test harness to demonstrate getVolser method.