读取注册表方法不用说了。

解决方案 »

  1.   

    如何检测电脑是否已经按照过.Net Framework了?check the registry"HKLM\Software\Microsoft\.NETFramework\InstallRoot" or check for
    C:\WINNT\Microsoft.NET
    判断注册表:如果存在就认为是已经安装:
    \LocalMachine\software\microsoft\.NetFrameWork下面的
    InstallRoot(=C:\WINDOWS\Microsoft.NET\Framework\)存放安装目录,不同的版本安装在不同的目录下.Policy\v1.0\有版本信息.
    在部署中设定检查是否安装过.net framework
    http://support.microsoft.com/default.aspx?scid=kb;zh-cn;315291
    正在考虑别的方法..............
      

  2.   

    一般情况下可以判断注册表:HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework是否存在,如果存在,则判断Software\Microsoft\.NETFramework\InstallRoot键值是否为空,如果非空,怎可以根据此路径判断其下面的mscorlib.dll文件是否存在,如果存在,则可以初步判断.NET Framework存在了,理想地。请到http://expert.csdn.net/Expert/topic/2093/2093481.xml?temp=.29443 回复结帖子
      

  3.   

    请看下面部分代码:Public Function DoesDotNETFrameworkExist() As Boolean
            
            Dim o_blnRet As Boolean
            Dim o_strRet As String
            
            With New cRegistry
                .hKey = HKEY_LOCAL_MACHINE
                .KeyPath = "Software\Microsoft\.NETFramework"
                If .DoesKeyExist() Then
                    .KeyPath = "Software\Microsoft\.NETFramework"
                    o_strRet = GetRegValue(.GetRegistryValue("InstallRoot", ""))
                    o_blnRet = (o_strRet <> "")
                    If o_blnRet Then
                        With New cFileFuncs
                            o_blnRet = .DoesFileExistEx(o_strRet & "v1.0.3705\mscorlib.dll")
                            If o_blnRet Then
                            Else
                                o_blnRet = .DoesFileExistEx(o_strRet & "v1.1.4322\mscorlib.dll")
                            End If
                        End With
                    Else
                    
                    End If
                Else
                    o_blnRet = False
                End If
            End With
            
            DoesDotNETFrameworkExist = o_blnRet
            
    End Function