我们用VSTO自开发的EXCEL插件,用Advanced installer打了msi包,在用户首次安装时,总是弹出对话框,提示是否安装此自定义程序,如此一来,我们就无法使用AD来推送到用户的机器上并静默安装。
公司有几千台电脑,部署量很大。而我们在网上下了一些excel的插件,很多都没有这个步骤,所以如何去掉这个弹窗?
请专家们指导,谢谢😊

我们用VSTO自开发的EXCEL插件,用Advanced installer打了msi包,在用户首次安装时,总是弹出对话框,提示是否安装此自定义程序,如此一来,我们就无法使用AD来推送到用户的机器上并静默安装。
公司有几千台电脑,部署量很大。而我们在网上下了一些excel的插件,很多都没有这个步骤,所以如何去掉这个弹窗?
请专家们指导,谢谢😊

阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
你遇到的问题是,使用VSTO自开发的EXCEL插件,使用Advanced installer打了msi包,在用户首次安装时总是弹出对话框,提示是否安装此自定义程序。
解决方案是,可以在msi包中添加一个Detect表单,来检测是否已经安装过该程序,如果已经安装过,就不弹出对话框。
在Advanced installer中,可以在Setup->Detection->Detect表单中添加一个Registry检测,检测是否已经安装过该程序。
例如:
<Detection>
<Registry>
<Key>HKCU\Software\YourCompany\YourProduct</Key>
<Value>Installed</Value>
</Registry>
</Detection>
这样,在用户首次安装时,Advanced installer将检测是否已经安装过该程序,如果已经安装过,就不弹出对话框。
另外,你也可以使用Property表单来设置一个Installed属性,如果已经安装过该程序,就将该属性设置为True。
例如:
<Property>
<Name>Installed</Name>
<Value>False</Value>
</Property>
然后,在Setup->Actions->Install表单中添加一个Condition,检测Installed属性是否为True,如果是, 就不执行安装操作。
例如:
<Install>
<Condition>Installed=False</Condition>
<!-- 安装操作 -->
</Install>
这样,在用户首次安装时,Advanced installer将检测是否已经安装过该程序,如果已经安装过,就不执行安装操作。