Windows installer MSI MessageBox自定义操作

Windows installer MSI MessageBox自定义操作,windows-installer,action,Windows Installer,Action,我想为我的安装程序创建一个自定义操作,检查Outlook是否正在运行,如果正在运行,则会提示用户在继续之前关闭Outlook 一切都很好,只是当MessageBox出现通知用户必须关闭Outlook时,它出现在当前MSI安装窗口的后面。我想让它出现在前面,但我不知道怎么做 我做了一些研究,MSIProcessMessage函数看起来可以工作,但它是一个API函数,我不知道如何从代码中调用它 以下是我的代码片段: Dim bCont As Boolean = True

我想为我的安装程序创建一个自定义操作,检查Outlook是否正在运行,如果正在运行,则会提示用户在继续之前关闭Outlook

一切都很好,只是当MessageBox出现通知用户必须关闭Outlook时,它出现在当前MSI安装窗口的后面。我想让它出现在前面,但我不知道怎么做

我做了一些研究,MSIProcessMessage函数看起来可以工作,但它是一个API函数,我不知道如何从代码中调用它

以下是我的代码片段:

        Dim bCont As Boolean = True

        While bCont
            If Process.GetProcessesByName("OUTLOOK").Length > 0 Then
                    MsgBox("Please close Microsoft Outlook before you install the MissingLink Project Management add-in.", MsgBoxStyle.Information, "MissingLink Project Center")
            Else
                bCont = False
            End If
        End While
谢谢


Kevin

MSIProcessMessage上的VBScript代码示例可在以下位置找到:

但是,您确实不应该使用VBScript来编写自定义操作。如果你还没有,读一读

在过去,我曾有过一些关于VBScript的非常糟糕的经历,在我们的测试实验室中,它们100%正常,但对于客户来说,有近10%的时间失败。这真的不值得