我使用sharpsetup 2按功能执行msi复合。我使用cmd和ADDLOCAL进行静默安装,以指定我想要的功能,并且工作正常
问题是当我使用sharpsetup并且我传递了参数ADDLOCAL。当msi执行时,它接受参数i发送,但稍后再次更改它并默认选择所有功能
msiOi.Properties.Add("SERVERNAME", Configuration.Instance.DbServerName);
msiOi.Properties.Add("INSTANCENAME", Configuration.Instance.InstanceName);
List<string> FeaturesSeleted = new List<string>();
if(Configuration.Instance.ProductFeatures.InstallMeasconftool)
{
FeaturesSeleted.Add("ProductFeatureMCT");//Id Feature Inside the installer
}
if (Configuration.Instance.ProductFeatures.InstallSam)
{
FeaturesSeleted.Add("ProductFeatureSAM");//Id Feature Inside the installer
}
msiOi.Properties.Add("ADDLOCAL", string.Join(",", FeaturesSeleted));
这是msi日志:
MSI(c)(E0:14)[10:05:19:488]:属性更改:添加ADDLOCAL属性。它的价值是&#39; ProductFeatureMCT&#39;。
MSI(c)(E0:14)[10:05:19:628]:PROPERTY CHANGE:修改ADDLOCAL属性。它的当前价值是&#39; ProductFeatureMCT&#39;。它的新价值:&#39; MainFeatureTree,ProductFeatureMCT,ProductFeatureSAM&#39;。
如果有任何可以帮助我,我真的很感激