You can't use an MSM to install the .NET Fx:
  http://groups.google.com/groups?selm=%23tQ93Dl4BHA.2104%40tkmsftngp05参考这个:
把.NET程序部署到没有安装.NET Framwork的机器上
http://www.microsoft.com/China/Community/TechZone/TechArticle/TechDoc/deployNETApp.asp

解决方案 »

  1.   

    你可以把frame work 的exe安装文件直接打包进setup程序,
    具体做法是,右击你的安装工程,添加-〉文件
      在打开的浏览窗口中选择dotnetfx.exe,这样framework就作为安装资源,打到了安装包里面。 然后在用户自定义行为中添加这个exe文件(用户自定义行为中可以添加项目主输出,exe和dll文件),
      然后选择,这个新加入的自定义动作的属性,里面有一个项叫condition,也就是执行这个自定义动作的前提条件,在里面填入相关的值,也就是检查framework 有没有安装过,若安装过则不安装framework,若没有安装的话就执行自定义动作。
      当然,这些方法,都是以你用.net自带的windows installer 为基础的,
     祝你好运!!!
      

  2.   

    http://msdn.microsoft.com/msdnmag/issues/01/02/BuildApps/default.aspx
      

  3.   

    谢谢TheAres(班门斧) 
    我找到了那个setup.exe文件!
    http://www.microsoft.com/downloads/details.aspx?FamilyId=BF253CFD-1EFC-4FC5-BA7E-6A6F21403495&displaylang=en
      

  4.   

    windtower(阿发) 你好
    怎么让 安装的时候直接运行dotnetfx.exe,那个条件怎么写啊 谢谢
    也就是说 什么时候dotnetfx.exe才能出发运行啊
      

  5.   

    windtower(阿发) ,你的那是什么办法呀?
    都不详细,
    这个简单的框架方法谁都看得出来,
    关键就在于:“condition,也就是执行这个自定义动作的前提条件,在里面填入相关的值,”
    这个值可不是随便乱输入的呀!
    这个方法我试过了,不可行
    也许是我得那个条件设置的不好该问题继续关注
      

  6.   

    建议你用installshield,比较方便且专业
      

  7.   

    我也想知道相关的属性都应该填什么。例如arguments的值是自动生成的/Install,但是安装的时候他会报错,框架安装不了。