hmm, seems like you haven’t added the DLL to PublicDelayLoadDLLs
or equivalent leading the engine to search the DLL as soon as your module (Game) loads , by default it’ll search in system32 folder where your dll probably isn’t (not that you’d want it to be there anyways).
As I understand you are trying to load DLL for a game from its main game module rather than a plugin and so you are unable to find the startup module function for your primary game module!
However its not necessary to load the DLL in that exact function you can load it anytime when you like in any function like BeginPlay
or anything , just make sure to load it before you call any functions from it and unload (release the DLL Handle) when your game exits.
But, If you really want to load it on module startup (probably safer way) then read on:
in your ABCD.cpp file you might have something similar to following
IMPLEMENT_PRIMARY_GAME_MODULE( FDefaultGameModuleImpl, ABCD, "ABCD" );
Now in ABCD.h you can define a class say FWachrnoGame
which extends FDefaultGameModuleImpl
and override the StartupModule
function there and add all your dll loading in there.
Finally in the ABCD.cpp file edit the Macro to look like following
IMPLEMENT_PRIMARY_GAME_MODULE( FWachrnoGame, ABCD, "ABCD" );
That should do it. Sources