> Couldn't this technique be used to do just about anything?
Yes. As long as the processes are all run with the same rights/users. I created an app in .Net for my old job which would detect if the F8 key is pressed while a specific database app is active/in-focus. If so, it creates a new search window (that belongs to my app, not the db app) and changes the parent handle to that of the db app window. So now I've created my own 'search' feature within the db app. For the users of the db app, they don't even know F8 feature is homebrew. It works great and people use it all the time.
Yes. As long as the processes are all run with the same rights/users. I created an app in .Net for my old job which would detect if the F8 key is pressed while a specific database app is active/in-focus. If so, it creates a new search window (that belongs to my app, not the db app) and changes the parent handle to that of the db app window. So now I've created my own 'search' feature within the db app. For the users of the db app, they don't even know F8 feature is homebrew. It works great and people use it all the time.