On the not-so-nice side, it may run into problems with violating licenses for changing binaries. Not sure about that. It shouldn't be a problem though.
I'm sure the real-world intent is for post-release bugtesting and internal development procedures.
I don't think they want a bunch of average computer users patching random stuff on the fly, thinking they're "fixing" things...
It would be very neat to have that as an add-in component for your software to let you know about errors, fix them, and get you the solution for them for the next release.
Sure, but it would probably be safer and more useful to use the underlying routines to find and report bugs at runtime, rather than patching the binary for the end user, which I think is a recipe for disaster.
I wonder what would happen if you ran an application vanilla and it learned what is "normal", then later installed a plugin that added additional functionality through dll injection. Would this thing patch the exectutable to neutralize any attempts to use those dll injection plugins? I know a whole lot of people that would be mighty angry if it did.
Depends on who's actually using it and what the capabilities of the software are.
If this were strictly a development and forensics tool, I'm sure there would be ways to take in the software 'as a whole' when plugins are present.
I imagine it could probably even detect problems within the injection procedures themselves.
Of course, I really don't think it would be a good idea to sell or release such a thing as an end-user type of "repair" tool.
Oh, the horror!!
Still, I wonder why folks who make developer tools haven't picked up on this?
It'd be worth the extra money they'd charge for developing it, and having such a tool also able to run in source
instead of just after the fact on a binary would be immensely useful.
Seems to me like Microsoft devs might also have an easier time of it if they set up a whole roomful of these things pecking away at various Windows components...