![]() |
Проблема с ключами в реестре
Вобщем у меня назревал давно такой вопрос может где то это и было но счас искать бесполезно вобем имеем ключ:
@="\"C:\\WINDOWS\\папка с прогой\\прога.exe\" /F \"%1\\\"" Как его отвязать от диска? я же не могу создавать аддон только для диска С если потом кто нить винду на D поставит то работать не будет но переменные или как их назвать вроде %SYSTEMROOT% и тд...в реестре не работают! в некоторых местах работало так: @="\"\\WINDOWS\\папка с прогой\\прога.exe\" /F \"%1\\\"" но в этом случае команда вызывается из контекстного меню файла и выдаёт ошибку! подскажите как быть, может через sysoc как получится (тоесть в inf файле это проще будет сделать) |
DJ Electronic попробуй так
Код:
REGEDIT4 |
zuckij, не работает! вобще то реестр не понимает %SYSTEMROOT% .... даже если запуск программы прописывать в автозапуск !!!!
|
DJ Electronic
Я бы посоветовал воспользоваться утилитой Reg.exe, входящей в набор утилит Windows 2000 Support Tools Отдельно можно скачать здесь |
reg.exe входит в дистрибутив Windows XP
Пример использования можно посмотреть здесь |
jameszero, только написать хотел, только вот мне от этого не жарко не холодно:
Цитата:
|
Вообще да. Я ей просто пользуюсь еще с Windows 2000
|
кстати ещё и /v @ неверно работает! как пустоту то вставлять! в reg файлах значение по умолчанию @ а тут без папраметра вобще или просто /v команда неверно обрабатывается!
|
Для всех - reg /?
Чтобы добавить параметр по умолчанию используйте ключ /ve |
DJ Electronic
Чтобы "вставить" в параметры reg.exe значения переменных я просто запускаю ее из CMD-файла ;) Например, как здесь. |
Ладно со всем этим мы разобрались но не выходит всё равно нужно получить параметр чтобы в реестре выглядел так:
"C:\Windows\прога\прога.exe" /F "%1" !!!не кавычкой больше или меньше!!!никак не выходит!!! сами попробуйте такое сочетание получить |
Может на INF попробовать примерно так:
Код:
[Version] Код:
SET wdir=%~dp0 |
vek, респект, пасиб всё ок, работает, тока не %25% а %10% ;) похоже единственный способ в моём случае, кстати можно просто правой кнопкой по файлу - установить))) этого хватит в данном случае
|
Код:
zuckij, не работает! вобще то реестр не понимает %SYSTEMROOT% .... даже если запуск программы прописывать в автозапуск !!!! Код:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Cursors\Schemes] "Windows Green"="\"%SystemRoot%\\Cursors\\Green arrow.cur,%SystemRoot%\\Cursors\\Green help.cur,%SystemRoot%\\Cursors\\Green wait.cur,%SystemRoot%\\Cursors\\Green busy.cur,%SystemRoot%\\Cursors\\Green cross.cur,%SystemRoot%\\Cursors\\Green beam.cur,%SystemRoot%\\Cursors\\Green pen.cur,%SystemRoot%\\Cursors\\Green no.cur,%SystemRoot%\\Cursors\\Green size4.cur,%SystemRoot%\\Cursors\\Green size3.cur,%SystemRoot%\\Cursors\\Green size2.cur,%SystemRoot%\\Cursors\\Green size1.cur,%SystemRoot%\\Cursors\\Green move.cur,%SystemRoot%\\Cursors\\Green up.cur,,\"" |
zuckij, там синтаксис очень сложный! путается командная строка при выполнении!!! Сам поэксперементируй просто сделай cmd файлик пропиши в него REG ADD ..... куда нибудь в начало ветки реестра к примеру HKCR и в ней сразу папочку _Test_ к примеру вот и попытайся получить таким путём нужный результат чтобы в реестрепри выполнении отображалось "C:\Windows\proga\proga.exe" /F "%1" увидишь что это невозможно из за того как команда сложная! происходит путаница с кавычками - " ещё к тому же русский не понимает приходится делать кодировку дос ещё один минус такого способа!!!
|
DJ Electronic
Цитата:
Цитата:
Держи, все работает: Код:
REG ADD "HKCR\*\shell\changeIcon\command" /ve /d "\"%SYSTEMROOT%\PROF\PROG.exe\" /F \"%%1\\"" /f Цитата:
|
Да сделал уже, и так и так понял как! но пошёл первым путём! создал как обычно 2 файла один cmd второй reg, cmd запускает reg ключи экспортируюся в реестр далее 7zSFX тихий архив удаляет оба файла (дабы не сорить лишними файлами после того как они отработали) а теперь один cmd второй inf но принцип тот же, а конвертнуть из reg для inf не долго, быстрей чем для команды REG ADD....., всем спасибо тема закрыта, новеньким и начинающим вроде меня урок будет!
|
DJ Electronic
Цитата:
|
boss911, вопрос такой ты конвертора не видел reg2cmd или что нить в этом духе??? долго это очень в один всё делать! если заносить только те ключи "проблемные" а другие оствлять в reg опять 2 файла! ;)
|
DJ Electronic
Цитата:
Цитата:
|
Как в inf записать такой ключик?:
Код:
Windows Registry Editor Version 5.00 |
Код:
HKCU,"Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Cached","{871C5380-42A0-1069-A2EA-08002B30309D} {000214E6-0000-0000-C000-000000000046} 0x401",1,01,\ P.S. не проверял еще. |
Master of Magic, Конвертнул утилитой reg2inf кстати скачай её пригодится ;)
Код:
hkcu,"Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Cached","{871C5380-42A0-1069-A2EA-08002B30309D} {000214E6-0000-0000-C000-000000000046} 0x401",1,01,\ Код:
hkcu,"%31_SMWCSC%","{871C5380-42A0-1069-A2EA-08002B30309D} {000214E6-0000-0000-C000-000000000046} 0x401",1,01,\ |
Время: 21:07. |
Время: 21:07.
© OSzone.net 2001-