.NET Core Message Pump
I'm writing a cross-platform mouse without borders clone right now. Basically a .NET version of Synergy.
Tech stack: .NET Core, SignalR
I ran into an issue with my windows hooks not working when running inside a .NET Core console. This is because if you don't include Application.Run(new ApplicationContext()), there is no Windows message pump. Without a message pump, your hooks won't receive anything.
Fortunately, you can implement your own message pump very easily.
At the bottom of your console app, you need to implement a message pump by calling into the native windows API function: GetMessage, TranslateMessage, and DispatchMessage.
And then in at the bottom of you console app - write the pump