注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP 键下有对应的.NET Framework 版本号码的子键。 这些子键下有Install,如果装了Install的值为1.
如果没有装.net framework, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup应该不存。
HKEY hKEY=NULL;
try
{
LPCTSTR strSubKey=_T("SOFTWARE\\Microsoft\\NET Framework Setup\\NDP\\v2.0.50727");
long ret=RegOpenKey(HKEY_LOCAL_MACHINE,strSubKey,&hKEY);
if(ret!=ERROR_SUCCESS)
{
return false;
}
DWORD dwType,dwData,dwLen;
dwType=REG_DWORD;
dwLen=sizeof(DWORD);
ret=RegQueryValueEx(hKEY,_T("Install"),0,&dwType,(LPBYTE)&dwData,&dwLen);
if(ret!=ERROR_SUCCESS)
{
return false;
}
return dwData==1;
}catch(char * str)
{
if(hKEY!=NULL)
RegCloseKey(hKEY);
return false;
}