當你把轉換任務設定成寫回原始位置且檔名完全相同時,MCEBuddy 將無法封存原始檔案,反而會直接覆蓋它。
這是 MCEBuddy 的架構限制,因為其運作方式必須等到轉換任務完成後,封存任務才會啟動。然而在此情況下,由於轉換任務會覆寫原始檔案(檔名相同),當封存任務開始時,原始檔案早已被覆蓋,導致無物可封存。
解決此限制的方法是撰寫一個自訂命令,在轉換任務完成「之前」就先保存原始檔案,藉此保留原始檔案。簡言之,就是透過自訂命令在轉換任務執行期間,提前完成原本應由封存任務負責的工作。
請將以下自訂命令加入你的設定檔:
CustomCommandPath="c:\windows\system32\cmd.exe"
CustomCommandParameters="/c move /y \"%sourcefile%\" \"D:\\YYY\\%originalfilename%-Backup.%originalext%\""
CustomCommandHangPeriod=0
CustomCommandCritical=true
CustomCommandUISession=false
CustomCommandShowWindow=false
這會在轉換任務完成並以轉換後的檔案取代原始檔案「之前」,先將原始檔案複製到 D:\\YYY 資料夾,並命名為 <檔名>-Backup.<副檔名>。
你可以依需求變更目的資料夾與檔名結構。
@ImCoKeMaN 承接你在前一則討論的最後留言,這項操作無法透過 GUI 完成,因為它是架構上的硬性限制;但你可以把這幾行加入你的設定檔(你可以使用自訂的 profiles.conf 檔案,並讓 MCEBuddy 指向它,如此在升級後也不會遺失)。