Isso está embutido no Windows 7. Deve haver uma borda ao redor do ícone.
Internet Explorer preso e não em execução:
No Windows 7, estou procurando uma maneira rápida de ver se um determinado aplicativo está sendo executado ou não. (Os detalhes do aplicativo não importam - pode ser Bloco de Notas ou Internet Explorer, por exemplo).
Eu tenho o ícone do aplicativo preso à minha barra de tarefas, então uma solução seria se a cor do ícone mudasse quando a aplicativo estava sendo executado. No entanto, pode haver outras maneiras - qualquer alteração perceptível na GUI do Windows que não exija o clique ou a digitação será suficiente.
Você tem alguma sugestão?
EDIT: Um pouco mais contexto: Eu sou um desenvolvedor de software que freqüentemente executa um script de compilação. O script falha quando um determinado aplicativo está aberto. Às vezes esqueço de verificar se o aplicativo está aberto; então eu tenho que fechar o aplicativo e executar novamente o script.
Tente executar
tasklist | findstr "notepad"
Isso pode ser obtido com um script AutoIt curto. Isso requer que você instale o software AutoIt.
Os detalhes de tal script são encontrados na documentação oficial no link .
A maneira mais confiável é verificar se o processo está sendo executado. Você pode usar tasklist
ou pslist
( link direto ) de SysInternals .
O procmon da SysInternals informará que está sendo executado e, se você precisar aprender mais sobre o aplicativo, ele poderá ilustrar completamente os arquivos e encadeamentos adicionais que está gerando.
Se você tem o WMI ativado (deve ser por padrão).
Eu sugeriria usar o Sysinternals BGinfo
Você pode chamar o BGinfo usando o agendador de tarefas a cada X segundos e atualizar o plano de fundo da área de trabalho com a consulta WMI definida personalizada:
SELECT Name FROM Win32_Process Where Name like "notepad.exe"
Claro que você pode personalizar como quiser.
Configurar o bginfo.exe é muito fácil.
Eu anotei este script do PowerShell. Ele verifica se um processo atribuído a $ Victim está na lista retornada por Get-Process. Muito do restante do script está relacionado à criação da carga útil da Caixa de Mensagens.
Start-Sleep é apenas para dar a você espaço para respirar entre os testes.
É uma ideia original de um roteirista amador, portanto, poderia se beneficiar de melhorias, tanto no script quanto na lógica.
$Victim = "iExplore"
function Output-MsgBox
{
$WshShell = New-Object -comobject wscript.shell
$Message ="$Victim is running "
$PopUp = $WshShell.popup("$Message",0,"Your Alert ",1)
}
For (1..1000)
$Alerty = Get-Process
if($Alerty.ProcessName -contains $Victim) {
Output-MsgBox; Start-Sleep 10}
Else {Write-Host "No $Victim";Start-Sleep 10}
}
Ctrl + Desloc + Esc deve abrir o Gerenciador de Tarefas. A primeira guia à esquerda mostra seus aplicativos, a próxima guia mostra seus processos em execução. Se você quiser ver todos os processos em execução, clique no botão "Mostrar processos de todos os usuários". Não há necessidade de instalar nada da Sysinternals se eu tiver lido a sua pergunta corretamente.
Tags windows-7