Windows 8 我可以检测我的Windows 8应用程序是否正在运行吗?

Windows 8 我可以检测我的Windows 8应用程序是否正在运行吗?,windows-8,windows-8.1,Windows 8,Windows 8.1,我有一个后台任务,如果应用程序正在运行,我希望其行为有所不同。如何检测我的Windows 8应用商店应用程序是否正在运行?假设您希望您的应用程序在处于焦点时表现不同,下面是我在代码中处理它的方式- 在类构造函数中- CoreWindow.GetForCurrentThread().Activated += CoreWindowOnActivated; 然后,添加实现- private void CoreWindowOnActivated(CoreWindow sender, WindowAct

我有一个后台任务,如果应用程序正在运行,我希望其行为有所不同。如何检测我的Windows 8应用商店应用程序是否正在运行?

假设您希望您的应用程序在处于焦点时表现不同,下面是我在代码中处理它的方式-

在类构造函数中-

CoreWindow.GetForCurrentThread().Activated += CoreWindowOnActivated;
然后,添加实现-

private void CoreWindowOnActivated(CoreWindow sender, WindowActivatedEventArgs args)
{
    if (args.WindowActivationState == CoreWindowActivationState.CodeActivated)
        {
               //add your app specific behavior here
        }
}

您还需要在适当的时候分离事件。

如果我在WinForms中执行此操作,我将使用互斥锁

前台应用程序可以锁定它

当前台应用程序出于任何原因退出时,windows将解锁互斥锁

后台应用程序可以检查互斥锁是否已锁定


抱歉,我不知道我在为windows应用商店应用程序工作。

我想这已经得到了回答。此外,请使用互斥来避免两个线程访问相同资源的情况。链接的副本是关于windows phone的,没有一个好的答案,因此我不会投票将其作为副本关闭。