Class WinBase
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
FreeLibrary
(long handle) Frees the loaded dynamic-link library (DLL) module and, if necessary, decrements its reference count.static int
Retrieves the calling thread's last-error code value.static int
Retrieves the calling thread's last-error code value.static String
GetModuleFileName
(long hModule, int nSize) Retrieves the fully qualified path for the file that contains the specified module.static int
GetModuleFileName
(long hModule, ByteBuffer lpFilename) Retrieves the fully qualified path for the file that contains the specified module.static long
GetModuleHandle
(CharSequence moduleName) Retrieves a module handle for the specified module.static long
GetModuleHandle
(ByteBuffer moduleName) Retrieves a module handle for the specified module.static long
GetProcAddress
(long handle, CharSequence name) Retrieves the address of an exported function or variable from the specified dynamic-link library (DLL).static long
GetProcAddress
(long handle, ByteBuffer name) Retrieves the address of an exported function or variable from the specified dynamic-link library (DLL).static long
LoadLibrary
(CharSequence name) Loads the specified module into the address space of the calling process.static long
LoadLibrary
(ByteBuffer name) Loads the specified module into the address space of the calling process.static long
LocalFree
(long hMem) Frees the specified local memory object and invalidates its handle.static int
nFreeLibrary
(long handle) Unsafe version of:FreeLibrary(long)
static int
nGetModuleFileName
(long hModule, long lpFilename, int nSize) Unsafe version of:GetModuleFileName(long, java.nio.ByteBuffer)
static long
nGetModuleHandle
(long moduleName) Unsafe version of:GetModuleHandle(java.nio.ByteBuffer)
static long
nGetProcAddress
(long handle, long name) Unsafe version of:GetProcAddress(long, java.nio.ByteBuffer)
static long
nLoadLibrary
(long name) Unsafe version of:LoadLibrary(java.nio.ByteBuffer)
static long
nLocalFree
(long hMem) Unsafe version of:LocalFree(long)
-
Field Details
-
FALSE
public static final int FALSEBOOL return values.- See Also:
-
TRUE
public static final int TRUEBOOL return values.- See Also:
-
-
Method Details
-
nLocalFree
public static long nLocalFree(long hMem) Unsafe version of:LocalFree(long)
-
LocalFree
public static long LocalFree(long hMem) Frees the specified local memory object and invalidates its handle.- Parameters:
hMem
- a handle to the local memory object- Returns:
- if the function succeeds, the return value is
NULL
.If the function fails, the return value is equal to a handle to the local memory object. To get extended error information, call
GetLastError()
.
-
GetLastError
public static int GetLastError()Retrieves the calling thread's last-error code value. The last-error code is maintained on a per-thread basis. Multiple threads do not overwrite each other's last-error code.LWJGL note: This function cannot be used after another JNI call to a Windows function, because the last error resets before that call returns. For this reason, LWJGL stores the last error in thread-local storage, you can use
getLastError()
to access it. -
getLastError
public static int getLastError()Retrieves the calling thread's last-error code value. The last-error code is maintained on a per-thread basis. Multiple threads do not overwrite each other's last-error code.LWJGL note: This method has a meaningful value only after another LWJGL JNI call. It does not call
GetLastError()
from WinBase.h, it returns the thread-local error code stored by a previous JNI call. -
nGetModuleHandle
public static long nGetModuleHandle(long moduleName) Unsafe version of:GetModuleHandle(java.nio.ByteBuffer)
-
GetModuleHandle
Retrieves a module handle for the specified module. The module must have been loaded by the calling process.- Parameters:
moduleName
- the name of the loaded module (either a .dll or .exe file). If the file name extension is omitted, the default library extension .dll is appended. The file name string can include a trailing point character (.) to indicate that the module name has no extension. The string does not have to specify a path. When specifying a path, be sure to use backslashes (\), not forward slashes (/). The name is compared (case independently) to the names of modules currently mapped into the address space of the calling process.If this parameter is
NULL
,GetModuleHandle
returns a handle to the file used to create the calling process (.exe file).
-
GetModuleHandle
Retrieves a module handle for the specified module. The module must have been loaded by the calling process.- Parameters:
moduleName
- the name of the loaded module (either a .dll or .exe file). If the file name extension is omitted, the default library extension .dll is appended. The file name string can include a trailing point character (.) to indicate that the module name has no extension. The string does not have to specify a path. When specifying a path, be sure to use backslashes (\), not forward slashes (/). The name is compared (case independently) to the names of modules currently mapped into the address space of the calling process.If this parameter is
NULL
,GetModuleHandle
returns a handle to the file used to create the calling process (.exe file).
-
nGetModuleFileName
public static int nGetModuleFileName(long hModule, long lpFilename, int nSize) Unsafe version of:GetModuleFileName(long, java.nio.ByteBuffer)
- Parameters:
nSize
- the size of thelpFilename
buffer, inTCHAR
s.
-
GetModuleFileName
Retrieves the fully qualified path for the file that contains the specified module. The module must have been loaded by the current process.- Parameters:
hModule
- a handle to the loaded module whose path is being requested.If this parameter is NULL,
GetModuleFileName
retrieves the path of the executable file of the current process.lpFilename
- a pointer to a buffer that receives the fully qualified path of the module.If the length of the path is less than the size that the
nSize
parameter specifies, the function succeeds and the path is returned as a null-terminated string.If the length of the path exceeds the size that the
nSize
parameter specifies, the function succeeds and the string is truncated tonSize
characters including the terminating null character.The string returned will use the same format that was specified when the module was loaded. Therefore, the path can be a long or short file name, and can use the prefix "\?".
- Returns:
- if the function succeeds, the return value is the length of the string that is copied to the buffer, in characters, not including the terminating null
character.
If the buffer is too small to hold the module name, the string is truncated to
nSize
characters including the terminating null character, the function returnsnSize
, and the function sets the last error toERROR_INSUFFICIENT_BUFFER
.If the function fails, the return value is 0 (zero). To get extended error information, call
GetLastError()
.
-
GetModuleFileName
Retrieves the fully qualified path for the file that contains the specified module. The module must have been loaded by the current process.- Parameters:
hModule
- a handle to the loaded module whose path is being requested.If this parameter is NULL,
GetModuleFileName
retrieves the path of the executable file of the current process.nSize
- the size of thelpFilename
buffer, inTCHAR
s.- Returns:
- if the function succeeds, the return value is the length of the string that is copied to the buffer, in characters, not including the terminating null
character.
If the buffer is too small to hold the module name, the string is truncated to
nSize
characters including the terminating null character, the function returnsnSize
, and the function sets the last error toERROR_INSUFFICIENT_BUFFER
.If the function fails, the return value is 0 (zero). To get extended error information, call
GetLastError()
.
-
nLoadLibrary
public static long nLoadLibrary(long name) Unsafe version of:LoadLibrary(java.nio.ByteBuffer)
-
LoadLibrary
Loads the specified module into the address space of the calling process. The specified module may cause other modules to be loaded.- Parameters:
name
- the name of the module. This can be either a library module (a .dll file) or an executable module (an .exe file). The name specified is the file name of the module and is not related to the name stored in the library module itself, as specified by the LIBRARY keyword in the module-definition (.def) file.If the string specifies a full path, the function searches only that path for the module.
If the string specifies a relative path or a module name without a path, the function uses a standard search strategy to find the module.
If the function cannot find the module, the function fails. When specifying a path, be sure to use backslashes (\), not forward slashes (/).
If the string specifies a module name without a path and the file name extension is omitted, the function appends the default library extension .dll to the module name. To prevent the function from appending .dll to the module name, include a trailing point character (.) in the module name string.
-
LoadLibrary
Loads the specified module into the address space of the calling process. The specified module may cause other modules to be loaded.- Parameters:
name
- the name of the module. This can be either a library module (a .dll file) or an executable module (an .exe file). The name specified is the file name of the module and is not related to the name stored in the library module itself, as specified by the LIBRARY keyword in the module-definition (.def) file.If the string specifies a full path, the function searches only that path for the module.
If the string specifies a relative path or a module name without a path, the function uses a standard search strategy to find the module.
If the function cannot find the module, the function fails. When specifying a path, be sure to use backslashes (\), not forward slashes (/).
If the string specifies a module name without a path and the file name extension is omitted, the function appends the default library extension .dll to the module name. To prevent the function from appending .dll to the module name, include a trailing point character (.) in the module name string.
-
nGetProcAddress
public static long nGetProcAddress(long handle, long name) Unsafe version of:GetProcAddress(long, java.nio.ByteBuffer)
-
GetProcAddress
Retrieves the address of an exported function or variable from the specified dynamic-link library (DLL).- Parameters:
handle
- a handle to the DLL module that contains the function or variablename
- the function or variable name, or the function's ordinal value. If this parameter is an ordinal value, it must be in the low-order word; the high-order word must be zero.
-
GetProcAddress
Retrieves the address of an exported function or variable from the specified dynamic-link library (DLL).- Parameters:
handle
- a handle to the DLL module that contains the function or variablename
- the function or variable name, or the function's ordinal value. If this parameter is an ordinal value, it must be in the low-order word; the high-order word must be zero.
-
nFreeLibrary
public static int nFreeLibrary(long handle) Unsafe version of:FreeLibrary(long)
-
FreeLibrary
public static boolean FreeLibrary(long handle) Frees the loaded dynamic-link library (DLL) module and, if necessary, decrements its reference count. When the reference count reaches zero, the module is unloaded from the address space of the calling process and the handle is no longer valid.- Parameters:
handle
- a handle to the loaded library module
-