I have been checking on the site for a way to transfer data from a process to another one in C++. I found the method SendMessage() but it does not seem to be able to take a
Interprocess communication is a plattform-specific thing. In Windows, there are many ways to do that. This MSDN article describes several methods and their pros, cons and use-cases:
http://msdn.microsoft.com/en-us/library/windows/desktop/aa365574(v=vs.85).aspx
When you control both applications, and support for 3rd party applications is no concern for you, then sending the WM_COPYDATA message through SendMessage() to the other process might be a good approach.
If you want to use SendMessage you can use the WM_COPYDATA message to send a block of data although it's just a block of bytes, not an object.