观察进程启动,然后执行命令

观察进程启动,然后执行命令

除了组合一个服务来监控进程启动之外,还有其他方法可以附加代码,或者对另一个特定进程的启动事件处理程序执行命令/进程吗?

我有两个相互冲突的应用程序。我希望服务持续运行,除非检测到特定进程启动,所以我想将代码附加到进程启动和进程退出事件。理想情况下,我希望有某种方式不需要编写自己的服务来处理此功能,但我不确定 powershell 或任务调度程序是否能够实现(或任何其他现有解决方案?)。

答案1

通过 powershell 和任务计划程序解决(用作powershell要运行的进程,并且-windowstyle hidden PATH_TO_PS1

while(1)
{
    $LBM = Get-Process "LittleBigMouse_Daemon" -ErrorAction SilentlyContinue
    $DRG = Get-Process "FSD-Win64-Shipping" -ErrorAction SilentlyContinue
    if($DRG)
    {
        if($LBM)
        {
            Start-Process -FilePath "C:\Program Files\LittleBigMouse\LittleBigMouse_Daemon.exe" -ArgumentList "--stop" #kill LBM
            Stop-Process -Name "LittleBigMouse_Daemon" -Force
            Write-Output "Killing LBM"
        }
    } else {
        if(-not($LBM))
        {
            Start-Process -FilePath "C:\Program Files\LittleBigMouse\LittleBigMouse_Daemon.exe" -ArgumentList "--start" #Run LBM
            Write-Output "Starting LBM"
        }
    }
    Start-Sleep -Seconds 60
}

相关内容