So, say I want to make a program that solves a Free Cell game that I have open in another window. So basically, what I'd want to do is:
- open e.g. the Windows Free Cell, get a random deal
- have my program read the deal from the Free Cell application
- have my program find a solution using for example a state space search algorithm like A*
- have my program execute that solution in the Free Cell application
Now my question is, how do I accomplish steps 2 and 4? How would I communicate with a 3rd party application without doing some fancy screen capturing and text/shape recognition?
Another more advanced example would be e.g. programming a 3rd party bot for a game (without an official API from the game's producers), where you'd need to repeatedly read the state of the game, and execute actions accordingly.
(disclaimer: I do not intend to use any information gathered here to program illegal bots)
...and that's the bottom line because Mate de Vita said so.