我正在开发一个 C# windows 服务 + UI 应用程序。
我有一个问题,如果在卸载过程中用户尝试启动 UI,则卸载会损坏并卡住(因为 ui 持有某些文件的句柄并防止它们被删除)。
处理这种情况的最佳方法是什么?我想也许我应该在开始卸载过程时限制对 .exe 的访问,这样用户将无法启动它。
但我想知道是否有关于如何做到这一点的 BKM
编辑
该应用程序已安装在客户的机器上,因此我无法对应用程序本身进行任何更改。
我有一个升级安装程序,它可以在卸载过程中做一些事情。升级安装程序首先卸载应用程序,然后重新安装。我只能将代码添加到升级安装程序,因此我不能使用互斥锁。谢谢!