Is it a known bug with VS and therefore an inherent limitation, or is there any workaround (some VS settings probably)?
How to reproduce:
Start VS2017
Select “DebugGame Editor” config
Start debugging (F5)
Place breakpoint (for example at BeginPlay() in an actor)
PIE → breakpoint is hit
Detach VS debugger (Debug/Detach All)
Make some changes to the code
Build game project
Observe the editor to Hot Reload the new DLL(s) (BuildTool should detect UE running and choose compiling for hot reload)
Reattach VS debugger (Debug/Reattach to Process)
PIE → breakpoint is not hit
To me it seems that VS debugger cannot find out that the editor is now using a new DLL,
or Unreal Editor behaves like it still uses the old DLL (‘Modules’ window shows the old DLL to be loaded).
That’s interesting. Have you done something specific during that back and forth switch? Like wiping Binaries. Intermediate, and Saved folders? I’m using a source code build of the engine so going back and forth is not that easy.