Normally, you don't need to use it. Possible reasons to use it, include....

1. You are going to call the function yourself using Assembly. Very useful if the API is created in a non-VB friendly format (i.e., _CDECL).

2. You want to test for a specific function within an API, you can load the DLL then call GetProcAddress to see if the function exists.

3. In some rare cases, you may want to use LoadLibrary to ensure the library is not released by VB before you want it released. By calling LoadLibrary, you create a reference to it and FreeLibrary releases that reference.