我已经通过注册表为所有文件类型添加了一个右键菜单选项,该选项用于获取文件的 MD5 校验和。
HKEY_CLASSES_ROOT*\shell\Checksum - 默认:获取校验和
和
HKEY_CLASSES_ROOT*\shell\Checksum\command - 默认:checksum.cmd“%1”
checksum.cmd 只是清除屏幕,使用 %1 调用 fciv.exe,然后暂停。
不幸的是,虽然“获取校验和”选项在右键菜单中正确显示,但单击后它无法执行正确的操作。单击它时会打开“打开方式”对话框,这当然不是我想要的。
checksum.cmd 和 fciv.exe 都在 PATH 中。
校验和.cmd:
@echo off
cls
fciv.exe %1
pause
有人知道发生了什么事吗?
答案1
为了执行 .cmd 文件,您需要调用 Windows 命令 shell 并告诉它解释脚本。要在注册表中设置此功能,请将命令键的 (Default) 值的数据更改为cmd.exe
如下所示:
HKEY_CLASSES_ROOT\*\shell\Checksum\command - Default: cmd.exe /C checsum.cmd "%1"
顺便说一句,您可以将pause
脚本中的命令替换为可以自动等待指定时间(足够长的时间让您读取输出)的命令,然后再继续执行其他操作或让窗口消失。例如,要暂停 5 秒,您可以使用:
ping 1.0.0.0 -n 1 -w 5000 >nul
参数后面的值-w
表示等待的时间(以毫秒为单位)。