I need to prevent an application from being started on a windows machine. The most obvious way (having an infinite loop and using EnumProcesses/OpenProcess/TerminateProcess) implies that the target application/process has already been started and also that it ran for a certain period of time.

Renaming/editing/patching/deleting the target application sadly isn't an option.