you can also use this below C/C++ code
#include <windows.h>
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
DWORD dwType = 0;
wchar_t szVersion[1024] = {0};
DWORD dwDataSize = 1024;
HKEY hkeyDotNetVer = NULL;
long lResult = 0;
lResult = RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\NET Framework Setup\\NDP\\v2.0.50727", 0, KEY_READ, &hkeyDotNetVer);
if(ERROR_SUCCESS == lResult)
{
lResult = RegQueryValueEx(hkeyDotNetVer, L"Version", NULL, &dwType, (BYTE*)szVersion, &dwDataSize);
if(ERROR_SUCCESS == lResult)
{
std::wcout << "Dot net Version = " << szVersion << std::endl;
return 0;
}
else
{
std::wcout<<"unable to read registry Error Code : "<<GetLastError();
return -1;
}
}
else
{
std::wcout<<"unable to read registry Error Code : "<<GetLastError();
return -1;
}
}