Atualiza constantemente um arquivo .txt com o título da janela do aplicativo aberta?

3

Digamos que eu esteja executando uma janela do navegador e o título da janela seja algo como "Title Here - Mozilla Firefox". Eu quero constantemente atualizar um arquivo .txt que contém o título desta janela, o que significa que o arquivo .txt deve mudar à medida que a barra de título muda (não precisa ser instantânea, talvez a cada 1 segundo).

Eu já sei que isso é possível no Linux com wmctrl e um pouco de script, mas gostaria de fazer isso no Windows 10.

Como posso fazer isso? Quais aplicativos ou SDKs eu precisaria?

EDIT: Se alguém estiver curioso para ver o script Powershell com o qual acabei, aqui vai . Salve-o como .ps1 para executar (e certifique-se de ativar scripts do Powershell .

    
por RobotUnderscore 08.02.2018 / 01:32

2 respostas

4

Isso deve ajudá-lo a começar a usar o PowerShell. O código foi adaptado de um blog do MSDN e de uma resposta do StackOverflow por Keith Hill. Veja a resposta dele para descrição do parâmetro .

$period = [timespan]::FromSeconds(5) $lastRunTime = [DateTime]::MinValue while (1) { while ((Get-Date) - $lastRunTime -lt $period) { Start-Sleep -Milliseconds 500 } $lastRunTime = Get-Date Get-Process |where {$_.MainWindowTitle} |format-table MainWindowTitle –AutoSize > c:\users\username\title.txt }

    
por 08.02.2018 / 02:22
0

Eu suspeito que esta não é a sugestão mais elegante, mas que pode funcionar, especialmente se você estiver confortável com a criação de scripts. O Macro Express Pro é um programa que funciona com o Windows e possui recursos substanciais. Os controles lógicos e de loop dentro da Macro Express são bastante poderosos. Uma das características que descobri como parte desta pesquisa é a capacidade de carregar uma variável de string com a barra de título da janela atual. link Eu usei "barra de título" como o termo de pesquisa e cliquei na entrada Definir Variável de Cadeia. Rolando para baixo nos resultados mostra:

Set Value To Top Most Window Title

Examines the window that is currently on top of all others, takes the name that is in the caption bar (i.e. the Window Title) and places it into a variable.

Eu não tenho a habilidade de scripting para sugerir como processar a variável string a partir de agora, já que qualquer ação mudaria o foco da janela, mas você pode descobrir mais flexibilidade do que eu no programa geral.

    
por 08.02.2018 / 02:12