glax24
Разработчик
- Сообщения
- 2,001
- Реакции
- 1,491
- Баллы
- 558
мне кажется все дело в ошибке в reg queryreg query "%key2%\%onepunkt1%"
мне кажется все дело в ошибке в reg queryreg query "%key2%\%onepunkt1%"
call echo.>>"%~dp0ttools\UserReg\%%onepunkt1%%.reg"
:onepunkt1
call :queryonepunkt1
echo Пункт №1
echo.
set /p name_onepunkt1="Ведите имя пункта меню и нажмите клавишу Enter: "
echo Введено "%name_onepunkt1%"
pause
copy "%~dp0ttools\ishodnik\reg.reg" "%~dp0ttools\UserReg\%onepunkt1%.reg"
echo Windows Registry Editor Version 5.00 >"%~dp0ttools\UserReg\%onepunkt1%.reg"
echo.>>"%~dp0ttools\UserReg\%onepunkt1%.reg"
echo ^[^HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\%onepunkt1%]>>"%~dp0ttools\UserReg\%onepunkt1%.reg"
reg import "%~dp0ttools\UserReg\%onepunkt1%.reg"
reg add "%key2%\%onepunkt1%" /ve /d "%name_onepunkt1%" /f
reg add "%key2%\%onepunkt1%" /v "Icon" /t REG_SZ /d "imageres.dll,104" /f
reg add "%key1%\%name%" /v "SubCommands" /d "%onepunkt1%;AddLog;prochee" /f
echo @echo off >"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo set txt_file="%~dp0ttools\UserTxt\%onepunkt1%.txt" >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo if not exist %%txt_file%% goto _error >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo :_clip >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo "%%SystemRoot%%\System32\clip.exe" ^<^ %%txt_file%% >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo exit >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo :_error >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo echo %%txt_file%% - file not found >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo pause >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo exit /B >>"%~dp0ttools\UserBat\%onepunkt1%.bat"
echo Раздел %name% уже существует,перезаписать его или отменить операцию?
Значение параметра?имя параметра (MUIVerb или по умолчанию) ?
@echo off
SetLocal EnableExtensions
call :Reg_Read "HKCU\Environment" "TEMP" "Data" "Type"
echo TEMP=%Data%. Тип данных: %Type%
pause & Exit /B
:Reg_Read
:: %1-вх.Раздел
:: %2-вх.Имя параметра
:: %3-исх.Переменная для хранения значения
:: %4-исх.(опционально)-Переменная для хранения типа параметра
set "%~3="& if "%~4" neq "" set "%~4="
For /f "tokens=2*" %%a In ('Reg.exe query "%~1" /v "%~2"') do (
set "%~3=%%~b"& if "%~4" neq "" set "%~4=%%~a"
)
Exit /B
Можно. Но тогда давай в новой теме.Как вариант встроить команду с vbs?
А что не так? Давай учится... на примере этой темы.На vbs пока ума не хватает
@echo on
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\AddLog" /v MUIVerb >%~dp0j.txt
for /f scip 1 и т.д.
да,был.У тебя ведь небольшой опыт на VB.NET был ?
Давай!Давай учится... на примере этой темы.
Понимаешь Кирилл, проблемы начинаются там,Как вариант
Давай. Буду объяснять все последовательно, но в одной теме обо всем.Создать новую?
Нет. Не пригодится. Зачем нам груз в виде необходимости установки .Net Framework.да,был.Dragokas написал(а):У тебя ведь небольшой опыт на VB.NET был ?
Пригодится?
сейчас исключительно для ос старше виста,про хр отдельная песня по твикам.ты попытаешься этот же скрипт запустить и на XP, и на Win7,
так и сделаю.Давай. Буду объяснять все последовательно, но в одной теме обо всем.
Логика работы с реестром продумана.Логику работы с реестром, конечно, серъезно надо продумать.
Псевдонимы пунктов меню в реестр записывать тупо транслитом?
А если русскими буквами - он поймет? А если еще и с пробелами?
HKEY_CLASSES_ROOT\DesktopBackground\Shell\melpmemu
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\Shell
HKEY_CLASSES_ROOT\DesktopBackground\Shell\melpmemu
Отсюда следует что имеет смысл создать 4 набора псевдонимов (это если только для меню рабочего стола) с понятными для нас и программы логическими именами (на латинице!)Псевдонимы пунктов меню в реестр записывать тупо транслитом?
namemenu
ctxlink1
ctxlink2
...
ctxlink13
ctxnamemeu1
ctxmenu1link1
ctxmenu1link2
...
ctxmenu1link13
ctxnamemeu2
ctxmenu2link1
ctxmenu2link2
...
ctxmenu2link13
ctxnamemeu3
ctxmenu3link1
ctxmenu3link2
...
ctxmenu3link13
Есть кому,да?Помогут.