1. A computer implemented method performed by one or more processors for installing software hooks into software code, the method comprising: identifying, using at least data characterizing an identity of a target method, the target method and a hook code, where the hook code is to execute instead of at least a portion of the target method, and wherein the target method and the hook code are executed within a managed code environment; locating a compiled version of the target method and a compiled version of the hook code in memory, where the compiled versions of the target method and the hook code are compiled in native code, wherein the locating comprises: forcing compilation of the target method to create the compiled version of the target method in memory to ensure that compiled code exists for the target method, wherein the compilation is forced by invoking the target method with default parameter values supplied and exceptions caught, the default parameter values predefined to cause the target method to throw an exception once invoked; forcing compilation of the hook code to create the compiled version of the hook code in memory; and modifying the compiled version of the target method by storing the hook code at or near an entry point of the compiled version, wherein the hook code, when executed, directs execution of at least a portion of the compiled version of the target method to the compiled version of the hook code.