Depende de como o MSI é codificado. Por exemplo, com o WiX, você precisa implementar uma ação personalizada para determinar se o aplicativo já está em execução ou se o arquivo estiver bloqueado para gravação. Eu acho que a ação padrão de um MSI se você não tem ações personalizadas é que ele apenas lança um diálogo como "Abortar, Repetir, Falhar" (ou similar) se ele tentar gravar em um arquivo que é bloqueado para edição (como seria quando o aplicativo está sendo executado).
Para lidar com muitos desses casos que os aplicativos conhecidos lidam normalmente (por exemplo, Skype, Firefox etc.), como encerrar uma instância em execução, você precisa implementar o código personalizado. O próprio Windows Installer (que é tudo o que posso supor que você tem se estiver falando de um MSI genérico ) não suporta nativamente tal recurso. Ele suporta muito pouco da caixa, e é por isso que existem coisas como o InstallShield.