In the prerequisites for the SLPS Code Protector SDK, .NET 3.0 is listed as a requirement. Why is this?
The Code Protector application in the SDK has a dependency on .NET 3.0.
Code Protector can protect assemblies using .NET versions 1.1, 2.0, 3.0 and 3.5.
Code protected by the Code Protector gets linked to a selectable variant of the SLPS Client Runtime - either 1.1 or 2.0.
The 2.0 variant of the SLPS runtime does not depend on .NET 3.0 or 3.5. In other words, if you restrict yourself to .NET 2.0 functionality, the runtime won't impose any requirement for anything other than 2.0. (Obviously if the rest of your app requires a version higher than 2.0, you'll need to make that a prerequisite of your application as appropriate.)
The 1.1 variant of the SLPS runtime only requires .NET 1.1.
(Internally, there is a version stamp on the runtime DLLs which is a SLPS product version. This is not connected with any framework requirements. e.g., the 3.0 versions of the APIs do not require .NET 3.0 - see the section on SLPS Client Runtime variants above)