How to have a module of defines?

I have a module of just defines so I have one spot where I define a bunch of needed paths. This works fine on Linux, but causes issues on Windows with dlls.

Error message:

1>LINK : error LNK2001: unresolved external symbol _DllMainCRTStartup
1>C:\Users\zerophase\Documents\gitRepos\ArticyParser\Plugins\Dialogue\Binaries\Win64\UE4Editor-Paths.dll : fatal error LNK1120: 1 unresolved externals

DialogueSystemPaths.h:

#define DIALOGUE_UI_STYLES "/Dialogue/UI/Styles" 
#define DIALOGUE_THIRDPERSON_CHARACTER "/Dialogue/PlayerController/ThirdPersonCharacter"
#define DIALOGUE_BANTER_HUDU "/Dialogue/UI/BanterHUDU.BanterHUDU_C"
#define DIALOGUE_DIALOGUE_HUDU "/Dialogue/UI/DialogueHUDU.DialogueHUDU_C"

Paths.Build.cs:

namespace UnrealBuildTool.Rules
{
    public class Paths : ModuleRules
    {
        public Paths(ReadOnlyTargetRules Target) : base(Target)
        {
            bRequiresImplementModule = false;
        }
    }
}

Is there any means of getting this to work on Windows?

It’s probably not the answer you’re looking for but using defines for paths to Blueprint objects is a bad idea imo. Assets should be loaded using the tools & patterns provided (Asset Registry/Class Properties) because they are designed to handle these issues for you.

Code file paths (I’m assuming here, not sure what your intent is) should be handled as simple includes which is handled for you during the build process. Yes there will be some duplication but really, how much value would this level of indirection add?