vlc动态脚本

@echo off
REM 获取当前脚本的执行路径
set “current_path=%~dp0”

echo 当前脚本的执行路径: %current_path%

setlocal enabledelayedexpansion

:: 定义要搜索的文件名
set filename=vlc.exe
set VLC_PATH=

:: 提示用户输入VLC的路径(可选)
echo 请输入VLC的目录(不含vlc.exe) 或 直接回车进入自动搜索:
set /p user_input=
echo 用户输入VLC目录: [%user_input%]

:: 检查用户输入是否为有效路径
if not “%user_input%”"" (
:: 去除输入字符串前后的空格
:loopa
if “%user_input:~0,1%”
" " (
set “user_input=%user_input:~1%”
goto loopa
)
:loopb
if “%user_input:~-1%”==" " (
set “user_input=%user_input:~0,-1%”
goto loopb
)

echo 用户输入VLC路径: [%user_input%]   

:: 暂停脚本,用户确认输入信息按任意键继续
echo 确认输入信息,Ctrl+C退出执行
pause

if exist "%user_input%\%filename%" (  
    set "VLC_PATH=%user_input%\%filename%"  
    echo 已使用指定的VLC路径: [%VLC_PATH%]  
) else (  
    echo 未使用指定的VLC目录: [%user_input%] ,不存在文件[%filename%], 将自动搜索。  
    set "user_input="  
)  

)

:: 如果未使用用户指定的路径或指定的路径无效,则自动搜索
if not defined VLC_PATH (
echo 正在自动搜索vlc.exe…
:: 遍历指定的盘符
for %%d in (C D E F G H I J K) do (
echo Searching in drive: %%d:
for /f “delims=” %%p in (‘where /r %%d:\ %filename% 2^>nul’) do (
set VLC_PATH=%%p
echo Found: !VLC_PATH!
goto :end_search
)
)
)

:end_search
:: 检查是否找到文件
if defined VLC_PATH (
echo VLC全路径: [!VLC_PATH!]

:: 初始化变量
set "VLC_PATH_DOUBLE="

:: 替换单个反斜杠为双反斜杠
set "VLC_PATH_DOUBLE=%VLC_PATH:\=\\%"
echo 注册表VLC全路径: [!VLC_PATH_DOUBLE!]

> temp_vlc_protocols_reg.reg echo Windows Registry Editor Version 5.00
echo. >> temp_vlc_protocols_reg.reg

REM 为每种协议生成相应的注册表项
for %%P in (rtmp rtp rtsp udp) do (
    echo ^[HKEY_CLASSES_ROOT\%%P^] >> temp_vlc_protocols_reg.reg
    echo @="URL:%%P Protocol" >> temp_vlc_protocols_reg.reg
    echo "URL Protocol"="" >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    
    echo ^[HKEY_CLASSES_ROOT\%%P\DefaultIcon^] >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    
    echo ^[HKEY_CLASSES_ROOT\%%P\shell^] >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    
    echo ^[HKEY_CLASSES_ROOT\%%P\shell\open^] >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    
    echo ^[HKEY_CLASSES_ROOT\%%P\shell\open\command^] >> temp_vlc_protocols_reg.reg
    echo @=^"\"!VLC_PATH_DOUBLE!\"  \"%%1\"^" >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
    echo. >> temp_vlc_protocols_reg.reg
)

echo 注册表项已生成,请手动双击运行 %current_path%temp_vlc_protocols_reg.reg 来应用更改。

) else (
echo 注册表项未生成, 未找到vlc.exe文件.
)

:: 暂停脚本,直到用户按任意键
pause

:: 结束脚本(实际上,当执行到pause时,脚本就会等待用户输入,然后自动结束)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值