这里使用 Windows 10。
代入open_video.bat
"%USERPROFILE%\Desktop\VLCPortable media player\VLCPortable.exe" --start-time=54 --stop-time=89 "%USERPROFILE%\Downloads\some_video.mkv"
位置open_video.bat
是C:
在 Notepad++ 中我有下面这个链接,我通过双击它来调用批处理文件:
file:///C:\open_video.bat
当我双击批处理文件时,它会some_video.mkv
从54
第二个标记开始在 VLC 中打开,播放到89
第二个标记,然后在这两个时间戳之间循环播放视频。
但是,我不想硬编码54
和89
。有什么方法可以写入批处理文件的链接,并修改批处理文件中的代码,以便我可以将54
或任何内容和89
或任何内容作为参数或参数传递?
例如,将批处理文件的链接重写为类似以下内容:
file:///C:\open_video.bat?start=54&end=89
并修改批处理文件的代码如下:
"%USERPROFILE%\Desktop\VLCPortable media player\VLCPortable.exe" --start-time=start --stop-time=end "%USERPROFILE%\Downloads\some_video.mkv"
或者类似的东西?
答案1
您可以像这样修改批处理文件:
"%USERPROFILE%\Desktop\VLCPortable media player\VLCPortable.exe" --start-time=%1 --stop-time=%2 "%USERPROFILE%\Downloads\some_video.mkv"
然后像这样调用它:
C:\open_video.bat 54 89
或者在文件 URI 中:
file:///C:\open_video.bat%2054%2089
在编码的 URL 中,%20 是空格,用参数替换 54 和 89。
答案2
每https://stackoverflow.com/a/2141333/9731176,在大多数情况下这似乎是不可能的:
我假设您使用的是 Windows?如果是这样,则无法使用“file://”语法传递参数,因为它是一种不接受参数的异步可插入协议。