DLL hooking and injecting is an old, tried and true method for making software do things the original programmers did not intend.
Cracks and game trainers have used that method for years... along with pointer spoofing, stack insertion, and buffer swapping.
Makes me feel all misty-eyed and nostalgic for the good ol' days! *sniff*