程序安装时检查是否已经安装.NETFramework

添加新项中添加一个安装程序类
using  System;
using  System.Collections;
using  System.ComponentModel;
using  System.Configuration.Install;
using  Microsoft.Win32;
using  System.Diagnostics;
using  System.IO;
namespace  DOTNETCheck
dot.gif {
    
/**//// 
    
/// CheckDotnet 的摘要说明。
    
/// 

    [RunInstaller(true)]
    
public class CheckDotnet : System.Configuration.Install.Installer
    
dot.gif{
        
/**//// 
        
/// 必需的设计器变量。
        
/// 

        private System.ComponentModel.Container components = null;

        
public CheckDotnet()
        
dot.gif{
            
// 该调用是设计器所必需的。
            InitializeComponent();

            
// TODO: 在 InitComponent 调用后添加任何初始化
            

        }


        
Component Designer generated code#region Component Designer generated code
        
/**//// 
        
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
        
/// 此方法的内容。
        
/// 

        private void InitializeComponent()
        
dot.gif{
            components 
= new System.ComponentModel.Container();
        }

        
#endregion


        
public override void Install(System.Collections.IDictionary stateSaver)
        
dot.gif{
        
            
//入口
            RegistryKey key=null;
            key 
= Registry.LocalMachine.CreateSubKey("Software\\Microsoft\\.NETFramework\\policy\\v1.0");
            
if(key==null||key.GetValue("3705")==null)
            
dot.gif{
                    Process MyProcess
=new Process(); 
                    MyProcess.StartInfo.FileName
="dotnetfx.exe";
                    MyProcess.StartInfo.WindowStyle
=ProcessWindowStyle.Hidden;
                    MyProcess.Start();
                    MyProcess.WaitForExit(); 
//等待程序执行
                    MyProcess.Close();
            }


        }

    }

}

你可能感兴趣的:(程序安装时检查是否已经安装.NETFramework)