I’m writing a bot for a game, which has a C++ API interface (ie. methods in a Cpp dll get called by the game when events occur, the dll can call back methods in the game to trigger actions).
I don’t really want to write my bot in C++, I’m a fairly experienced C# programmer but I have no C++ experience at all. So, the obvious solution is to use ipc to send event to a C# program, and send actions back to the C++ one, that way all I need to write in C++ is a basic framework for calling methods and sending events.
What would be the best way to do this? Sample code would be greatly appreciated as I no have particular desire to learn C++ at this point!
One solution is to create a managed C++ class library with regular
__declspec(dllexport)functions which call managed methods in a referenced C# class library.Example – C++ code file in managed C++ project:
C# Module (separate project in solution):
Note that I am demonstrating that this is an actual .NET call by using a
System.Windows.Forms.MessageBox.Showcall.Sample basic (non-CLR) Win32 console application:
Remember to link the Win32 console application with the
.libfile resulting from the build of the managed C++ project.