Older Newer
Fri, 05 Mar 2010 13:20:08 . . . . SyneRyder


Changes by last author:

Added:
= getLibFn =

== Syntax ==

:int getLibFn(void *dllHandle, char *functionName)

== Arguments ==

:dllHandle

::A handle (obtained with loadLib) to the DLL the function is in.

:functionName

::The name of the function to get a pointer to.

== Return ==

:Returns a pointer to the DLL function.

== Description ==

:Locates a specific function in a DLL, allowing you to call the function from within FilterMeister by using callLib.

== 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, functionPointer, returnval;

lib_user32 = loadLib("user32");

if (!lib_user32) msgBox(MB_OK, "Error", "DLL was not loaded");

functionPointer = getLibFn(lib_user32, "MessageBoxA");

if (!functionPointer) msgBox(MB_OK, "Error", "Function wasn't loaded");

strcpy(str0, "The window text is here");

strcpy(str1, "Caption Text");

returnval = callLib(functionPointer, NULL, str0, str1, MB_YESNO);

if (returnval == IDYES) msgBox(MB_OK, "Yes!", "Yes was clicked");

if (returnval == IDNO) msgBox(MB_OK, "No :(", "No was clicked");

freeLib(lib_user32);

</code>

== Also see ==

:loadLib, callLib, freeLib

== Comments ==

:Everyone can add their comments about their experiences with this function here. Tips for using it are welcome, too.