
Example 12: Dynamically loaded DLLs

This example demonstrates that Live++ can be used with dynamically loaded DLLs.

DLLs loaded by a call to LoadLibraryA() or LoadLibraryW() can be enabled in Live++ by calling EnableModule()
in the agent afterwards. Before freeing a DLL using FreeLibrary(), it can be disabled in Live++ by calling
DisableModule() in the agent before freeing the library.

Alternatively, calling EnableAutomaticHandlingOfDynamicallyLoadedModules() once will make the agent take care
of enabling and disabling modules automatically as they are loaded into and unloaded from the corresponding
process, as shown in this example.

Additionally, the example allows loading and unloading the plugin at any time by pressing "L" or "U",
respectively. This demonstrates that the plugin module will be handled automatically by Live++ in this case
as well.

Interesting things to look at and try out have been marked with "Live++" in the source code.
