If the .NET 4 Framework is not installed, the application bring a message, but if only the client framework is installed and the application need the Full Framework, nothing happened and the application starts.
Is there a way to check if .NET 4 Full Framework is installed on the target system and not only the Client Framework?
I search a solution to check it with the "app.manifest" file or in C# on program start.
Navigate to the Control Panel (Click here for instructions on how to access the Control Panel on Windows 10, 8, and 7 machines) Select Programs and Features (or Programs) In the list of installed applications, locate "Microsoft . NET Framework" and verify the version in the Version column to the right.
The version of . NET Framework (4.5 and later) installed on a machine is listed in the registry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full. If the Full subkey is missing, then . NET Framework 4.5 or above isn't installed.
Select Start > Control Panel > Programs > Programs and Features. Select Turn Windows features on or off. If not already installed, select Microsoft . NET Framework and click OK.
The best way to check if it exists is to follow the advice of the authors and check for the existence of the appropriate registry entry.
The details for each of the keys, including .Net 4, can be found at this reference http://msdn.microsoft.com/en-us/kb/kbarticle.aspx?id=318785
Go to your Project Properties screen (Main menu Project/Properites) and then select the Publish tab. Click on the "Prerequisites" button you'll note in the list that the check box for "Microsoft .NET Framework 4 Client Profile (x86 and x64)" is already checked.
Tick the checkbox for "Microsoft .NET Framework 4 (x86 and x64)" above it.
Then republish your projeect.
On installation it should now check for the full framework and install it if not present.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With