Eu não sei nada sobre o PotPlayer, pode haver uma maneira melhor de fazê-lo completamente em segundo plano. Fácil o suficiente para fazer no AutoHotkey, porém, se você não se importa com alguns diálogos surgindo e desaparecendo novamente.
Esse script abre a caixa de diálogo FileInfo, copia o nome do arquivo para a área de transferência e faz uma cópia desse caminho para outro caminho. Alterações que você precisará fazer no script abaixo:
- Remova o
MsgBox
depois de testar se funciona para capturar o nome de arquivo atual - O destino da cópia está codificado para
c:\temp
atualmente → altere para o que você quiser - Você pode alterar a tecla de atalho atribuída no script abaixo, se quiser (atualmente
F8
) - Defina a opção para sobrescrever na instrução filecopy se você quiser (ou não)
Este script foi testado trabalhando na caixa de mensagem que exibe o nome do arquivo atual que ele pega, portanto, supondo que a filecópia funcionará bem depois disso - se não, é um ponto de partida para você brincar.
Exemplo de script:
#Persistent
SetTitleMatchMode, 2
Return
#IfWinActive, ahk_class PotPlayer
F8::
SendInput ^{F1} ; Pull up info dialog
WinWaitActive, Playback/System Information,,2
If ErrorLevel {
Tooltip, Couldn't find dialog... exiting...
Sleep 2000
ToolTip
Return ; couldn't find dialog
}
lastClipboard := ClipboardAll ; Save existing clipboard contents
SendInput ^{Tab 2} ; Focus tab control at top
Sleep 100
SendInput {Right} ; Focus FileInfo tab
Sleep 100
SendInput {Space} ; Select FileInfo
Sleep 100
SendInput !c ; Select copy to clipboard
Sleep 100
SendInput {Space} ; Execute
Sleep 100
SendInput !c ; Select close
Sleep 100
SendInput {Space} ; execute
Sleep 100
FileName := ""
Loop, Parse, % FileInfo:=Clipboard, 'n
{
If InStr(A_LoopField, "Complete name") {
FileName := Trim(Substr(A_LoopField, InStr(A_LoopField, ":")+1)) ; get path and file after colon and trim spaces
Break
}
}
Clipboard := lastClipboard ; restore previous clipboard
If (FileName = "") {
Tooltip, Couldn't find filename... exiting...
Sleep 2000
ToolTip
Return
}
; Remove this when no longer needed...
MsgBox % "Filename Found: " FileName
; Put the target directory of choice here instead of c:\temp
; add a 1 as the third arg to overwrite if needed
FileCopy, % FileName, % "C:\temp"
Return