是否可以使用通配符检查是否创建了互斥锁?

时间:2015-02-02 10:38:27

标签: c# mutex wildcard

例如,我的应用程序就像这样创建互斥锁:

MyApplication\\{UserName}

然后我的更新程序(更新此应用程序)需要检查是否已创建,但它不知道用户名。

我有代码:

string mutexString = "MyApplication\\User1"
bool isNew;
var mutex = new Mutex(true, mutexString , out isNew);
if(isNew)
{
   //Run my program
}

如果我知道用户名,这可以正常工作,但我想知道这是否可以使用通配符?

1 个答案:

答案 0 :(得分:0)

所以从评论中我得知这是不可能的,所以更好的解决方案可能是检查我实现的运行过程如下:

foreach (var process in Process.GetProcesses())
{
    if (process.MainWindowTitle.IndexOf("MyApp",StringComparison.InvariantCultureIgnoreCase) >= 0)
    {
         isNew = false;
    }   
}
相关问题