Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » [решено] Импорт в реестр параметров, содержащих переменные в значениях

Ответить
Настройки темы
[решено] Импорт в реестр параметров, содержащих переменные в значениях

Аватара для Wu-Tang

Ветеран


Сообщения: 1309
Благодарности: 79


Конфигурация

Профиль | Отправить PM | Цитировать


Привет
Не подскажите, как сделать, путь к файлу в ключе реестра, переменным.
Например:
Код: Выделить весь код
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\Shell\open\command\: "C:\Program Files\QuickSFV\QuickSFV.EXE "%1""

-------
Всему свое время и каждому свой час!
Хочешь жить - умей вертеться!

Это сообщение посчитали полезным следующие участники:

Отправлено: 06:44, 01-01-2012

 


Moderator


Сообщения: 53441
Благодарности: 15497

Профиль | Отправить PM | Цитировать


Wu-Tang, если я правильно понял, что вы имели в виду, можно использовать тип REG_EXPAND_SZ и переменные окружения, например %ProgramFiles%
Код: Выделить весь код
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\Shell\open\command]
@=hex(2):25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,\
  00,73,00,25,00,5c,00,51,00,75,00,69,00,63,00,6b,00,53,00,46,00,56,00,5c,00,\
  51,00,75,00,69,00,63,00,6b,00,53,00,46,00,56,00,2e,00,45,00,58,00,45,00,20,\
  00,22,00,25,00,31,00,22,00,00,00
Это сообщение посчитали полезным следующие участники:

Отправлено: 07:54, 01-01-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Wu-Tang

Ветеран


Сообщения: 1309
Благодарности: 79

Профиль | Отправить PM | Цитировать


Petya V4sechkin,
Думаю правильно.
Те ключ должен писаться с правильным указанием диска, на котором есть папка program files.
Пример вижу, только не понял, как так обработать ключи с другими путями, например:
Код: Выделить весь код
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QuickSFV\UninstallString: "C:\Program Files\QuickSFV\QSFVUNST.EXE C:\Program Files\QuickSFV\"
А вот все:
Код: Выделить весь код
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\QuickSFV Shell Extension\: "{906b0e6e-61ce-11d3-8ee2-0060080a7242}"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{906b0e6e-61ce-11d3-8ee2-0060080a7242}\InProcServer32\: "C:\Program Files\QuickSFV\QSFVShll.dll"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{906b0e6e-61ce-11d3-8ee2-0060080a7242}\InProcServer32\ThreadingModel: "Apartment"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{906b0e6e-61ce-11d3-8ee2-0060080a7242}\: "QuickSFV Shell Extension"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shellex\ContextMenuHandlers\QuickSFV Shell Extension\: "{906b0e6e-61ce-11d3-8ee2-0060080a7242}"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.CKZ\: "File_Verification_Database"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.CRC\: "File_Verification_Database"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.CSV\: "File_Verification_Database"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.MD5\: "File_Verification_Database"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.PAR\: "File_Verification_Database"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.SFV\: "File_Verification_Database"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\Shell\open\command\: "C:\Program Files\QuickSFV\QuickSFV.EXE "%1""
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\Shell\verify_all\command\: "C:\Program Files\QuickSFV\QuickSFV.EXE DOALL "%1""
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\Shell\verify_all\: "&Verify All"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\Shell\open\: "&Open"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\Shell\: "open"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\DefaultIcon\: "C:\Program Files\QuickSFV\QuickSFV.EXE,0"
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\File_Verification_Database\: "File Verification Database"
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved\{906b0e6e-61ce-11d3-8ee2-0060080a7242}: "QuickSFV Shell Extension"
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ShellCompatibility\Objects\{906b0e6e-61ce-11d3-8ee2-0060080a7242}\CTXMENU_NOVERBS: ""
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QuickSFV\DisplayName: "QuickSFV (Remove only)"
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QuickSFV\UninstallString: "C:\Program Files\QuickSFV\QSFVUNST.EXE C:\Program Files\QuickSFV\"

-------
Всему свое время и каждому свой час!
Хочешь жить - умей вертеться!


Отправлено: 08:04, 01-01-2012 | #3



Moderator


Сообщения: 53441
Благодарности: 15497

Профиль | Отправить PM | Цитировать


Цитата Wu-Tang:
как так обработать
Сначала либо создать руками, либо командой Reg Add в командной строке.
Потом экспортировать в REG-файл.
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:21, 01-01-2012 | #4


Аватара для apozlevich

Ветеран


Автор проектов


Сообщения: 1025
Благодарности: 180

Профиль | Отправить PM | Цитировать


Petya V4sechkin, а как они получаются? Может написать какой-нибудь конвертер? На входе - REG_SZ с переменной, на выходе REG_EXPAND_SZ.

-------
echo 127.0.0.1 google.ru >> %systemroot%\system32\drivers\etc\hosts && ipconfig /flushdns && echo Я ничего не трогал, оно само!


Отправлено: 10:52, 01-01-2012 | #5


Аватара для Wu-Tang

Ветеран


Сообщения: 1309
Благодарности: 79

Профиль | Отправить PM | Цитировать


Petya V4sechkin,
Что-то не совсем понятно, ну вот сверху ключи, я привел, что далее, я должен сделать, с каждым или всю пачку можно конвертнуть?
Все же я не совсем понимаю, как эта процедура делается.
apozlevich,
Да, если бы вы это сделали, то было бы чудесно.

-------
Всему свое время и каждому свой час!
Хочешь жить - умей вертеться!


Отправлено: 03:43, 02-01-2012 | #6



Moderator


Сообщения: 53441
Благодарности: 15497

Профиль | Отправить PM | Цитировать


Wu-Tang, для примера возьмем ключ:
Цитата:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{906b0e6e-61ce-11d3-8ee2-0060080a7242}\InProcServer32\: "C:\Program Files\QuickSFV\QSFVShll.dll"
Создаете CMD-файл:
Код: Выделить весь код
Reg Add HKLM\SOFTWARE\Classes\CLSID\{906b0e6e-61ce-11d3-8ee2-0060080a7242}\InProcServer32 /VE /T REG_EXPAND_SZ /D %%ProgramFiles%%\QuickSFV\QSFVShll.dll /F
Reg Export HKLM\SOFTWARE\Classes\CLSID\{906b0e6e-61ce-11d3-8ee2-0060080a7242}\InProcServer32 Example1.reg
и выполняете.
На выходе получаете Example1.reg
Код: Выделить весь код
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{906b0e6e-61ce-11d3-8ee2-0060080a7242}\InProcServer32]
@=hex(2):25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,\
  00,73,00,25,00,5c,00,51,00,75,00,69,00,63,00,6b,00,53,00,46,00,56,00,5c,00,\
  51,00,53,00,46,00,56,00,53,00,68,00,6c,00,6c,00,2e,00,64,00,6c,00,6c,00,00,\
  00
Следующий пример:
Цитата:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QuickSFV\UninstallString: "C:\Program Files\QuickSFV\QSFVUNST.EXE C:\Program Files\QuickSFV\"
CMD-файл:
Код: Выделить весь код
Reg Add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QuickSFV /V UninstallString /T REG_EXPAND_SZ /D "%%ProgramFiles%%\QuickSFV\QSFVUNST.EXE %%ProgramFiles%%\QuickSFV\\" /F
Reg Export HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QuickSFV Example2.reg
На выходе Example2.reg
Код: Выделить весь код
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\QuickSFV]
"UninstallString"=hex(2):25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,\
  69,00,6c,00,65,00,73,00,25,00,5c,00,51,00,75,00,69,00,63,00,6b,00,53,00,46,\
  00,56,00,5c,00,51,00,53,00,46,00,56,00,55,00,4e,00,53,00,54,00,2e,00,45,00,\
  58,00,45,00,20,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,\
  00,6c,00,65,00,73,00,25,00,5c,00,51,00,75,00,69,00,63,00,6b,00,53,00,46,00,\
  56,00,5c,00,00,00
Для ознакомления с параметрами команды Reg Add можете почитать:
Код: Выделить весь код
Reg Add /?
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:33, 02-01-2012 | #7


Аватара для apozlevich

Ветеран


Автор проектов


Сообщения: 1025
Благодарности: 180

Профиль | Отправить PM | Цитировать


Petya V4sechkin, а можно простым скриптом
Код: Выделить весь код
@echo off
Reg Add %1 /VE /T REG_EXPAND_SZ /D %2 /F
Reg Export %1 %3
(Просто одна команда вместо двух. Использовал ваш код, не проверял, скрипт не "отказоусточив")

Запускается так: script.cmd <ветвь реестра> <параметр> <файл вывода>

Wu-Tang, я имел в виду не конвертер из REG_SZ в REG_EXPAND_SZ, а просто подстановку правильных значений переменных. Хотя сейчас понимаю, что это было бы не совсем правильно. Сегодня займусь конвертером, позже.

-------
echo 127.0.0.1 google.ru >> %systemroot%\system32\drivers\etc\hosts && ipconfig /flushdns && echo Я ничего не трогал, оно само!


Отправлено: 10:37, 02-01-2012 | #8



Moderator


Сообщения: 53441
Благодарности: 15497

Профиль | Отправить PM | Цитировать


Цитата apozlevich:
не проверял
И не заметили разницу между первым и вторым примером.
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:44, 02-01-2012 | #9


Аватара для apozlevich

Ветеран


Автор проектов


Сообщения: 1025
Благодарности: 180

Профиль | Отправить PM | Цитировать


Petya V4sechkin, это верно Но ведь все заработает?
Кстати, подскажите, а как еще можно получить REG_EXPAND_SZ?

-------
echo 127.0.0.1 google.ru >> %systemroot%\system32\drivers\etc\hosts && ipconfig /flushdns && echo Я ничего не трогал, оно само!


Отправлено: 11:27, 02-01-2012 | #10



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » [решено] Импорт в реестр параметров, содержащих переменные в значениях

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
7 / 2008 R2 - [решено] Импорт параметров реестра в HKLM из SFX в Windows 7 x64 9119 Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista 38 26-10-2010 20:04
[решено] Как в Run передать переменные в качестве параметров ASH AutoIt 4 17-12-2009 10:13
.NET - C# Создание раздела/импорт файла в удаленный реестр Delirium Программирование и базы данных 1 16-02-2009 01:25
Разное - Информация о параметрах и их значениях реестра. latin Microsoft Windows 2000/XP 6 12-09-2007 10:42
Не работает импорт в реестр через [GuiRunOnce] Serg-13 Автоматическая установка Windows 2000/XP/2003 3 09-11-2005 13:37




 
Переход