一个WPF浏览器应用程序
发布的时候需要指定几个系统必备组件,如下图
Certificate Installer
Windows Installer 3.1
.NET Frameword 3.5其中 Certificate Installer 也是基于.NET的
但是在客户端浏览器查看publish.htm点击运行后
总是先安装Certificate Installer
因为客户机上没有安装.net框架导致整个安装失败请问能否指定它们的安装顺序呢?

解决方案 »

  1.   

    实际发布后在其它客户机安装过程中就是先装了Certificate Installer导致失败
      

  2.   

    已解决,需要在Product.xml添加    <RelatedProducts>
            <DependsOnProduct Code=".NETFramework,Version=v4.0"/>
            <DependsOnProduct Code="Microsoft.Windows.Installer.3.1" />
        </RelatedProducts> 
      

  3.   

    谢谢楼主分享解决办法。我也遇到了这个问题,开始看楼主的解决办法还不是很明白,后来才搞清楚是怎么回事,记录下来给自己也给有同样困惑的人留个详细的解决办法。我用的是vs2010,默认安装的引导程序安装路径在C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages下。如楼主的问题,组件Certificate Installer
    需要依赖于.NETFramework,Version=v4.0,则打开组件Certificate Installer
    下的product.xml,添加一条<DependsOnProduct Code=".NETFramework,Version=v4.0"/>
    即可
      

  4.   

    楼上总结的是
    vs2010还有一个经常碰到的错误,顺便总结一下错误提示:MSB3152: 系统必备的安装位置未设置为‘组件供应商的网站’,无法在磁盘上找到项‘Microsoft .NET Framework 4 Client Profile (x86 和 x64)’中的文件‘DotNetFX40Client\dotNetFx40LP_Client_x86_x64cs.exe’。解决方法:打开 "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\DotNetFX40Client" ,可以看到里面有很多不同语言的文件夹,其中zh-Hans就是简体中文文件所在的位置。直接把它前面的所有文件夹删掉,或者剪切走,然后重启VS应用程序,就可以了。http://autoo.net.cn/forum.php?mod=viewthread&tid=29