USBCopyer 回调功能详细说明

“回调” 是 USBCopyer V5.0 新引入的一个概念,它用于在 USBCopyer 执行特定操作时触发用户指定的代码或程序,以便实现某种高级的、程序没有提供的功能。

基本使用方法:

  1. 在USBCopyer设置打开回调的开关
  2. 打开USBCopyer所在目录下的 USBCopyer\USBCopyerSystem 文件夹
  3. 建立 回调名字.bat ,例如 AllCompletedCallback.bat
  4. 在里面写代码。可用的变量如下:

可用变量

书写以下内容就会被USBCopyer自动转换成相应的值。

变量名 说明
{$SystemDir} USBCopyer 所在目录
{$SystemVer} USBCopyer 版本号 例如 5.0.0.0
{$DataDir} USBCopyerData 所在目录(设置的数据目录)
{$USBDir} 本次复制所得的文件所在目录,不含{$DataDir}
{$VolumeSerialNumber} 磁盘序列号
{$VolumeName} 磁盘卷标(名字)
{$Volume} 磁盘盘符,例如G:
{$DriveType} 磁盘种类(返回数字)

磁盘种类:

Unknown (0)   
No Root Directory (1)  
Removable Disk (2)    
Local Disk (3)   
Network Drive (4)   
Compact Disc (5)  
RAM Disk (6)  

具体回调说明

当回调运行时,基准目录是 USBCopyer 所在目录下的 USBCopyerData\USBCopyerSystem 文件夹(无视数据目录设置)
回调的所有输出都会被捕获,并记入日志。

回调:AllCompletedCallback

在磁盘文件全部复制后触发,可以用于调用Git实现版本控制、调用云盘客户端实现上传等
当 USBCopyer 变成空闲状态时,便会创建一个新线程运行此回调

回调:DiskDetectedCallback

当磁盘插入时触发。可用于做复制判断
若 “(回调2)等待完成,并只允许返回0时复制” 启用,则该回调将阻塞复制线程,并在回调完成后且退出码为0时继续复制。
若上述设置未启用,则该回调对复制线程没有影响。
变量{$USBDir}不可用。强行获取将得到NONE

玩法实例:使用GIT进行版本控制

首先安装最新版本的 Git,安装过程一路 Next 即可
然后在 USBCopyerData 打开命令行或Powershell(win10为资源管理器点击左上角文件),输入:git init
然后保存以下代码到:USBCopyerData\USBCopyerSystem 文件夹,命名为 AllCompletedCallback.bat

@echo off
echo USBCopyer Git Tool // Written by Kenvix
echo USBCopyer Version: {$SystemVer}
cd ..
git add .
git commit --author "USBCopyer <usbcopyer@kenvix.com>" -m "AutoCommit: {$USBDir}" .
exit %ERRORLEVEL%

正在加载评论。你可能需要科学上网才能正常加载评论区