Показать полную графическую версию : Silent miniMIZE
Если я всё правильно понимаю, то проблема только в reg add. Он, как я уже говорил, заменяется генерацией reg файла через echo.
@echo off
REM Само создание файла см. ниже
REM Здесь начинается конвертация %programfiles% в путь с \\
set pt=
set op=%programfiles%
:extract
for /F "tokens=1,* delims=\" %%i in ("%op%") do If "%%j"=="" (
If "%pt%"=="" (
set pt=%%i
) ELSE (
set pt=%pt%\\%%i
)
) ELSE (
If "%pt%"=="" (
set pt=%%i
) ELSE (
set pt=%pt%\\%%i
)
set op=%%j
goto :extract
)
REM Здесь заканчивается конвертация %programfiles% в путь с \\
REM Начало создания reg файла
REM autorun.reg - его имя
REM Заголовок
echo Windows Registry Editor Version 5.00 > autorun.reg
echo. >> autorun.reg
REM Каталог реестра
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] >> autorun.reg
REM Ключ реестра
echo "miniMIZE"="%pt%\\miniMIZE\\miniMIZE.exe" >> autorun.reg
Получается что-то вроде этого:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"miniMIZE"="C:\\Program Files\\miniMIZE\\miniMIZE.exe"
Может, кто-нибудь знает, как можно нормально заменить в строке \ на \\?
VseDoFeNi
27-05-2006, 19:03
Народ, вот например такой *.reg
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\AppEvents\Schemes\Apps\CDCheck\CDChk1stError\.current]
@="C:\\Program Files\\CDCheck\\1sterror.wav"
Кто мешает сделать так?
reg add "HKCU\AppEvents\Schemes\Apps\CDCheck\CDChk1stError\.current" /ve /d "%ProgramFiles%\CDCheck\1sterror.wav"
Зачем непременно делать двойные слэши?
Reg есть только в WinXP (по имеющейся у меня информации).
Соответственно, для генерации reg файлов для импорта в реестр необходимо преобразовывать слэши.
VseDoFeNi
27-05-2006, 21:26
melato
Соответственно, для генерации reg файлов для импорта в реестр необходимо преобразовывать слэши.
Неа, не необходимо, reg.exe от XP прекрасно работает и в w2k, например. В w2k3 reg.exe тоже есть, кстати.
Т.е. просто можно в дистрибутив кинуть reg.exe?
VseDoFeNi
28-05-2006, 00:17
melato
Конечно, он же мизерный.
Спасибо. Соответствено, проблема решается гораздо легче.
VseDoFeNi
28-05-2006, 00:30
melato
Можешь его прамо в инсталятор рядом с батником положить.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.