= freeLib =
Requires FM 1.0 Beta 9.0 (April 2008) or newer == Syntax == int freeLib(void *handle) == Arguments == :handle ::Handle (as obtained from loadLib) to the DLL to be freed. == Returns == Returns a non-zero value (ie true) if the library was freed successfully, or zero / false if the function failed. == Description == Frees a DLL from memory. Behind the scenes, this function is just a wrapper around the [FreeLibrary] Win32 API function. == Example == <code> // This code loads the user32.dll // DLL included with Windows and // uses it to display a YES/NO // Message Box. int* lib_user32; int* functionPointer; int returnval; // Load the DLL library lib_user32 = loadLib("user32"); if (lib_user32) { // Get the function in the DLL functionPointer = getLibFn(lib_user32, "MessageBoxA"); if (functionPointer) { // Call the function strcpy(str0, "The window text is here"); strcpy(str1, "Caption Text"); returnval = callLib(functionPointer, NULL, str0, str1, MB_YESNO); // Process return value if (returnval == IDYES) msgBox(MB_OK, "Yes!", "Yes was clicked"); if (returnval == IDNO) msgBox(MB_OK, "No :(", "No was clicked"); } else msgBox(MB_OK, "Error", "Function wasn't loaded"); // Free the library DLL freeLib(lib_user32); }else msgBox(MB_OK, "Error", "DLL was not loaded"); </code> == See Also == == Comments == :Everyone can add their comments about their experiences with this function here. Tips for using it are welcome, too. |