When you install .NET Framework 3.5, it installs .NET Framework 3.0 SP1 & .NET Framework 2.0 SP1, or equivelent cumulative update on Vista.
For 3.5 RTM we look for the following:
Registry Key Name
Value
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\
NET Framework Setup\NDP\v3.5
Name: Install
Type: DWORD
Data: 1
For 3.0 RTM see the following:
http://msdn2.microsoft.com/en-us/library/aa964978.aspx#DetectingTheMicrosoftDotNETFramework3_0
For 3.0 SP1 we look for the following:
Registry Key Name Value HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ NET Framework Setup\NDP\v3.0 Name: SP Type: DWORD Data: 1
NET Framework Setup\NDP\v3.0
Name: SP
For 2.0 SP1 we look for the following:
Registry Key Name Value HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ NET Framework Setup\NDP\v2.0.50727 Name: SP Type: DWORD Data: 1
NET Framework Setup\NDP\v2.0.50727