fix: install.bat — генерация .reg через PowerShell (UTF-16)
This commit is contained in:
1 parent
c5d333f3e9
commit
abad7e0fe1
1 file changed
+26
-29
+26
-29
@@ -1,43 +1,40 @@
|
||||
@echo off
|
||||
chcp 65001 >nul
|
||||
|
||||
set "BAT_DIR=%~dp0"
|
||||
set "BAT_PATH=%BAT_DIR%raskidator.bat"
|
||||
set "REG_FILE=%BAT_DIR%install-context-menu.reg"
|
||||
|
||||
echo Создание install-context-menu.reg с путём: %BAT_PATH%
|
||||
echo.
|
||||
|
||||
>"%BAT_DIR%install-context-menu.reg" (
|
||||
echo Windows Registry Editor Version 5.00
|
||||
echo.
|
||||
echo ; Контекстное меню — правый клик в пустом месте папки
|
||||
echo [HKEY_CLASSES_ROOT\Directory\Background\shell\Raskidator3000]
|
||||
echo @="Raskidator-3000"
|
||||
echo "Icon"="\"%BAT_PATH:\=\\%\",0"
|
||||
echo.
|
||||
echo [HKEY_CLASSES_ROOT\Directory\Background\shell\Raskidator3000\command]
|
||||
echo @="\"%BAT_PATH:\=\\%\" \"%%V\""
|
||||
echo.
|
||||
echo ; Контекстное меню — правый клик на папке
|
||||
echo [HKEY_CLASSES_ROOT\Directory\shell\Raskidator3000]
|
||||
echo @="Raskidator-3000"
|
||||
echo "Icon"="\"%BAT_PATH:\=\\%\",0"
|
||||
echo.
|
||||
echo [HKEY_CLASSES_ROOT\Directory\shell\Raskidator3000\command]
|
||||
echo @="\"%BAT_PATH:\=\\%\" \"%%1\""
|
||||
echo.
|
||||
echo ; Библиотеки (Pictures, Music, Videos, Documents)
|
||||
echo [HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\Raskidator3000]
|
||||
echo @="Raskidator-3000"
|
||||
echo "Icon"="\"%BAT_PATH:\=\\%\",0"
|
||||
echo.
|
||||
echo [HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\Raskidator3000\command]
|
||||
echo @="\"%BAT_PATH:\=\\%\" \"%%V\""
|
||||
)
|
||||
:: Генерируем .reg через PowerShell (UTF-16 LE — правильная кодировка для реестра)
|
||||
PowerShell -Command ^
|
||||
"$path='%BAT_PATH:\=\\\%';" ^
|
||||
"$c='Windows Registry Editor Version 5.00'+[char]13+[char]10+[char]13+[char]10;" ^
|
||||
"$c+='; Контекстное меню — правый клик в пустом месте папки'+[char]13+[char]10;" ^
|
||||
"$c+='[HKEY_CLASSES_ROOT\Directory\Background\shell\Raskidator3000]'+[char]13+[char]10;" ^
|
||||
"$c+='@=\"Raskidator-3000\"'+[char]13+[char]10;" ^
|
||||
"$c+='\"Icon\"=\"\"\"'+$path+'\"\",0\"'+[char]13+[char]10+[char]13+[char]10;" ^
|
||||
"$c+='[HKEY_CLASSES_ROOT\Directory\Background\shell\Raskidator3000\command]'+[char]13+[char]10;" ^
|
||||
"$c+='@=\"\"\"'+$path+'\"\" \"%V\"\"'+[char]13+[char]10+[char]13+[char]10;" ^
|
||||
"$c+='; Контекстное меню — правый клик на папке'+[char]13+[char]10;" ^
|
||||
"$c+='[HKEY_CLASSES_ROOT\Directory\shell\Raskidator3000]'+[char]13+[char]10;" ^
|
||||
"$c+='@=\"Raskidator-3000\"'+[char]13+[char]10;" ^
|
||||
"$c+='\"Icon\"=\"\"\"'+$path+'\"\",0\"'+[char]13+[char]10+[char]13+[char]10;" ^
|
||||
"$c+='[HKEY_CLASSES_ROOT\Directory\shell\Raskidator3000\command]'+[char]13+[char]10;" ^
|
||||
"$c+='@=\"\"\"'+$path+'\"\" \"%1\"\"'+[char]13+[char]10+[char]13+[char]10;" ^
|
||||
"$c+='; Библиотеки (Pictures, Music, Videos, Documents)'+[char]13+[char]10;" ^
|
||||
"$c+='[HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\Raskidator3000]'+[char]13+[char]10;" ^
|
||||
"$c+='@=\"Raskidator-3000\"'+[char]13+[char]10;" ^
|
||||
"$c+='\"Icon\"=\"\"\"'+$path+'\"\",0\"'+[char]13+[char]10+[char]13+[char]10;" ^
|
||||
"$c+='[HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\Raskidator3000\command]'+[char]13+[char]10;" ^
|
||||
"$c+='@=\"\"\"'+$path+'\"\" \"%V\"\"'+[char]13+[char]10;" ^
|
||||
"Out-File -FilePath '%REG_FILE%' -InputObject $c -Encoding Unicode"
|
||||
|
||||
echo.
|
||||
echo Готово. Запусти install-context-menu.reg двойным кликом и подтверди добавление в реестр.
|
||||
echo.
|
||||
echo Если ранее устанавливал — сначала удали старые ключи:
|
||||
echo reg delete "HKEY_CLASSES_ROOT\Directory\Background\shell\Raskidator3000" /f
|
||||
echo reg delete "HKEY_CLASSES_ROOT\Directory\shell\Raskidator3000" /f
|
||||
echo reg delete "HKEY_CLASSES_ROOT\LibraryFolder\Background\shell\Raskidator3000" /f
|
||||
pause
|
||||
Reference in new issue
Block a user