@echo off
pushd "%~dp0"

set uin=
echo           ---------- [ KenPlayer 文件关联 ] ----------
echo.
echo 如果关联不成功, 请使用管理员身份运行此文件!
echo.
echo 警告: 关联后不能恢复原有关联, 除非使用原有工具再次关联可还原!
echo.
echo 可选择自己喜欢的图标放到图标目录, 如: mkv 文件图标可取名为 mkv.ico
echo.
echo     输入 Y 关联, N 不关联, A 关联所有, 或者直接关闭窗口取消所有
echo.
echo.
for %%f in ("%cd%\图标\*.ico") do Call :sub_link "%%f"
Rem for /R "%cd%\图标" %%f in (*.ico) do Call :sub_link "%%f"

popd

echo.
echo 关联结束, 请按任意键结束...
pause > nul

goto :eof

:sub_link
if "%uin%"=="A" goto :do_link
if "%uin%"=="a" goto :do_link
Rem set uin=
set /p uin=是否关联 [ %~n1 ] 文件:
if "%uin%"=="N" goto :eof
if "%uin%"=="n" goto :eof
if "%uin%"=="Y" goto :do_link
if "%uin%"=="y" goto :do_link
if "%uin%"=="A" goto :do_link
if "%uin%"=="a" goto :do_link
echo              输出错误, 请重新输入!
goto :sub_link

:do_link
echo              [ 关联文件 %~n1 ]
REG ADD "HKCR\.%~n1"									/ve /f /d "KenPlayer.%~n1"		> nul
REG ADD "HKCR\KenPlayer.%~n1"							/ve /f /d "%~n1 - 多媒体文件"	> nul
REG ADD "HKCR\KenPlayer.%~n1\DefaultIcon"				/ve /f /d "%~1"					> nul
REG ADD "HKCR\KenPlayer.%~n1\shell\Open"				/ve /f /d "使用 KenPlayer 播放"	> nul
REG ADD "HKCR\KenPlayer.%~n1\shell\Open\command"		/ve /f /d "\"%cd%\KenPlayer.exe\" \"%%1\""	> nul

REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.%~n1\UserChoice" /v "Progid" >nul 2>&1 || goto :eof
REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.%~n1\UserChoice" /f /v "Progid" /d "KenPlayer.%~n1" > nul
goto :eof
