3
在我的集成測試之一,我有兩個線程先卸載再安裝一個程序,但按順序運行時產生錯誤Failed to grab execution mutex. System error 258.
檢查Windows安裝程序互斥可用性
爲了解決這個問題我以後睡覺卸載。我試着檢查msiexec進程是否正在運行,但始終保持2-3次,因此這不是一個好的指標。有沒有辦法檢查msiexec執行互斥鎖是否可用?
在我的集成測試之一,我有兩個線程先卸載再安裝一個程序,但按順序運行時產生錯誤Failed to grab execution mutex. System error 258.
檢查Windows安裝程序互斥可用性
爲了解決這個問題我以後睡覺卸載。我試着檢查msiexec進程是否正在運行,但始終保持2-3次,因此這不是一個好的指標。有沒有辦法檢查msiexec執行互斥鎖是否可用?
bool msiIsRunning = false;
try
{
using(var mutex = Mutex.OpenExisting(@"Global\_MSIExecute"))
{
msiIsRunning = true;
}
}
catch (Exception)
{
// Mutex not found; MSI isn't running
}
謝謝,這真的很有用。 – 2012-04-13 20:52:43
順便說一句,請記住,技術上微星並不總是一項服務。 Win 9x平臺不支持Windows服務。 – 2012-04-13 21:25:15