Como automatizar a renomeação dentro de uma janela pop-up da área de transferência?

Como automatizar a renomeação dentro de uma janela pop-up da área de transferência?

Farei a seguinte tarefa literalmente milhares de vezes nos próximos dias. Faz parte de uma série de tarefas subjetivas e que não podem ser automatizadas, mas essa pode, acho a mais cansativa.

Posso automatizar o seguinte e como:

  • Sempre que a janela pop-up 'Download file info' do IDM aparecer, altere o texto entre o formato de texto (.mp3) e a primeira barra à direita com o texto da área de transferência (veja a imagem). Obrigado.

insira a descrição da imagem aqui

Responder1

Brevejanelasvocê deseja alguma automação. . .

  1. Detectar quando uma janela específica é gerada
  2. Tornar ativa uma janela específica detectada
  3. Insira um caminho completo de arquivo em um campo específico dentro de uma janela específica com o nome do arquivo menos a extensão desse caminho sendo o atualárea de transferênciavalor copiado

Considere usar o gratuitoAutoITaplicação e algumas funções e métodos de chamada de loop para isso.

Lógica AutoIT

Este método requer a configuração de duas variáveis: o caminho completo do arquivo como $SavePathe a extensão do arquivo como $SaveExtonde o Salvar comocampo doBaixar informações do arquivojanela salvará os arquivos.

Este método define umLocalvariáveldentro dofunção definida pelo usuáriorotulado IDM_DFI()e copia o atualárea de transferênciavalor como seu valor, portanto, presume-se aqui que você provavelmente terá algo que copia um valor exclusivo para a área de transferência antes doBaixar informações do arquivojanela é lançada.

Este processo selecionará e excluirá tudo doSalvar comocampo, substitua-o pelos valores das variáveis $SavePath​​, $Clip, e $SaveExtconcatenados nessa ordem, tornando-se a string para o caminho completo do arquivo e o nome do arquivo doarquivo baixado salvoe, em seguida, pressioneIniciar download.

Este processo começa com uma CheckWin() chamada de função definida pelo usuário e dentro dela oWinWaitfunção é usada para aguardar a geração de uma janela que tenha um título correspondente ao valor do$WinTitle Globalvariável. Ao detectar esta janela ele realizará os processos mencionados acima e então chamará a CheckWin()função novamente e aguardará o $WinTitlesurgimento de outra janela.

Global $WinTitle = "Download File Info"
Global $SavePath = "F:\German lge\Audio database\"
Global $SaveExt = ".mp3"

CheckWin()

Func CheckWin()
   WinWait($WinTitle)
   IDM_DFI()
EndFunc

Func IDM_DFI()
   Local $Clip = ClipGet()
   WinActivate($WinTitle)
   Sleep(200)
   ControlSend($WinTitle, "", "[CLASSNN:Edit3]", "^a{DELETE}"&$SavePath&$Clip&$SaveExt) ; "^a" --> CTRL+a to select all
   Sleep(200)
   ControlClick($WinTitle, "", "[CLASSNN:Button1]", "left")
   Sleep(500)
   CheckWin()
EndFunc

É possível tornar essa lógica mais dinâmica para aceitar três parâmetros de entrada e então você pode passá-los para o executável assim que ele for compilado para oTítulo da janela,Caminho completo para salvar como pasta, e aSalvar como extensão de arquivo que você deseja processar (por exemplo IDM_DFI.exe "Download File Info" "F:\German lge\Audio database\" ".mp3").


Recursos adicionais

informação relacionada