Tôi không biết gì về PotPlayer, có thể có một cách tốt hơn để làm điều đó hoàn toàn trong nền. Đủ dễ dàng để thực hiện trong AutoHotkey mặc dù nếu bạn không nhớ một vài hộp thoại bật lên và biến mất một lần nữa.
Kịch bản lệnh này mở hộp thoại FileInfo, sao chép tên tệp vào bảng tạm và sau đó thực hiện một bản ghi của đường dẫn đó sang đường dẫn khác. Những thay đổi bạn sẽ cần thực hiện đối với tập lệnh bên dưới:
- Xóa
MsgBox
một khi bạn đã kiểm tra rằng nó hoạt động để lấy tên tệp hiện tại
- Đích sao chép được mã hóa thành
c:\temp
hiện tại → thay đổi điều đó thành bất cứ điều gì bạn thích
- Bạn có thể thay đổi phím tắt được gán trong tập lệnh bên dưới nếu bạn muốn (hiện tại
F8
)
- Đặt tùy chọn ghi đè trong câu lệnh filecopy nếu bạn muốn (hoặc không)
Kịch bản lệnh này đã được thử nghiệm làm việc với hộp thông báo hiển thị tên tệp hiện tại mà nó lấy, do đó, giả sử rằng tệp phim sẽ hoạt động tốt sau đó - nếu không đó là điểm khởi đầu để bạn chơi.
Ví dụ tập lệnh:
#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