Войти

Показать полную графическую версию : Твики реестра .: [архив] :.


Страниц : 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90

boss911
20-02-2008, 02:57
что не так делаю? »
Попробуйте сделать экспорт reg файла с выгруженным процессом explorer.exe .

Blast
20-02-2008, 10:05
Как убрать из Пуск (справка и поддержка)? »
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoSMHelp"=dword:00000001

А еще вопросов наверное будет много, не проще ли сразу почитать по ссылкам в шапке темы?

kalikanzaros
20-02-2008, 10:37
Blast, boss911,
нужно зарегистрировать расширение на определенную программу, подскажите пожалуйста можно ли в экспортируемой ветке реестра заменить путь к папке "Program Files" на %programfiles%
тк возможен случай что "Program Files" будет не на диске С, а на каком-то другом, да к тому же есть небольшая вероятность что у кого-то эта папка будет называться по другому...

Petya V4sechkin
20-02-2008, 10:51
подскажите пожалуйста можно ли в экспортируемой ветке реестра заменить путь к папке "Program Files" на %programfiles%
Если тип параметра REG_EXPAND_SZ, можно попробовать (до экспорта).
Но обычно в таких случаях вместо reg-файлов приходится использовать либо команду REG ADD в .cmd скрипте, либо inf-файлы (http://forum.oszone.net/thread-66223.html).

kalikanzaros
20-02-2008, 11:18
Petya V4sechkin,
спасибо, неправильно сформулировал вопрос, слегка переиначу:
можно ли в reg файле заменить путь к папке "Program Files" на %programfiles% перед импортом оного в реестр?
если не сложно можно пример cmd скрипта с командой REG ADD
для простого примера, былREGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\htmlfile\shell]
@="OperaAC"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\htmlfile\shell\open\command]
@=""C:\\Program Files\\Opera_AC\\OperaAC.exe" "%1""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\InternetShortcut\shell\open\command]
@=""C:\\Program Files\\Opera_AC\\OperaAC.exe" "%1""

нужно чтобы при импорте прописывался корректный путь к папке "Program Files"

Anakin
20-02-2008, 11:27
kalikanzaros, тут не все так просто. Да, в секциях shell для типов файлов так делать можно, но для этого параметр должен быть типа REG_EXPAND_SZ. Этот тип параметров экспортируется в reg-файл в бинарном виде, поэтому правкой файла обойтись не получится - надо изменить тип параметра в редакторе реестра, задать ему нужное значение, а птотм эту секцию экспортировать в файл. Задача осложняется тем, что вам нужно сменить тип параметра "(По умолчанию)". Стереть его и создать новый параметр с тем же именем и новым типом - не получится. Вам нужно найти раздел реестра, где уже есть параметр "(По умолчанию") типа REG_EXPAND_SZ, скопировать его в буфер (имеено раздел), затем вставить в нужную вам ветку, переименовать раздел, добавить остальные параметры, какие там должны быть и т.д. Напрямую сменить тип параметра, не удаляя и не создавая его заново, насколько я знаю, нельзя.

kalikanzaros
20-02-2008, 11:37
Anakin,
добавлю информации, это нужно для того чтобы программы которые "устанавливаются" путем простого разархивирования в папку %programfiles% из wpi открывали именно те файлы "по умолчанию", для которых они и созданы
те сменять тип параметра в реестре или удалять его нет надобности, хотя если честно не вижу в этом сложности тк простое добавление "минуса" сразу после квадратной скобки в reg файле сносит этот раздел а добавление минуса после равно в значении параметра сносит этот параметр...
в wpi есть команда добавить в реестр после установки, вот и хочется добавить связь только что установленной программы с определенными расширениями

Anakin
20-02-2008, 11:45
kalikanzaros, я понял, зачем вам это нужно, сам с такой необходимость сталкиваюсь:)

Блин, чет я затупил, что в регфайле имена-то параметров можно изменить и перекинуть из одной секции в другую:) Тогда без проблем - создавайте в любой ветке (можете даже создать временную) параметр типа REG_EXPAND_SZ, задайте ему нужное значение, экспортируйте во временный reg-файл, затем из этого файла перенесите в ваш "инсталляторный" файл, заменив имя параметра на @ и положив его в нужный раздел.

Как сделаете - отпишитесь, если пройдет, то у себя также сделаю везде, где можно. Но такой финт ушами проходит не повсеместно - в секции Classes для регистрации расширений файлов он пройдет, а вот обмануть например WinRAR, изменяя в его ветке пути к темам оформления, не получится - он жестко завязан на строковый тип параметра, как следствие - нужен развернутый путь без системных переменных.:(

kalikanzaros
20-02-2008, 11:55
Anakin,
я не могу задать нужное значение тк не знаю как у конечного пользователя будет называтся папка %programfiles% и на каком диске она будет лежать
как идея сделать cmd или bat файл, который будет брать значение %programfiles% из path и подставлять это значение в импортируемые ключи, только к сожалению не силен в написании батников, поэтому требуется помощь... :)

Anakin
20-02-2008, 12:12
kalikanzaros, под нужным значением я понимаю строчку "%ProgramFiles%\opera\opera.exe" (ну или что вам там надо). Для REG_EXPAND_SZ это значение и хранится в реестре, а подстановка (т.е. расширение параметра) происходит прямо в памяти в момент чтения программой этого параметра - поэтому он и назван "расширяемый строковый параметр";)

kalikanzaros
20-02-2008, 12:14
Anakin,
теперь понятно, спасибо, попробую, постараюсь написать о результатах в пятницу

Petya V4sechkin
20-02-2008, 12:47
kalikanzaros, в вашем твике с кавычками непорядок.
Видимо, вы хотели так:
REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\htmlfile\shell]
@="OperaAC"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\htmlfile\shell\open\command]
@="\"C:\\Program Files\\Opera_AC\\OperaAC.exe\" \"%1\""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\InternetShortcut\shell\open\command]
@="\"C:\\Program Files\\Opera_AC\\OperaAC.exe\" \"%1\""

Тогда .cmd будет:
Reg Add HKLM\SOFTWARE\Classes\htmlfile\shell /VE /D OperaAC /F
Reg Add HKLM\SOFTWARE\Classes\htmlfile\shell\open\command /VE /D "\"%ProgramFiles%\Opera_AC\OperaAC.exe\" \"%%1\"" /F
Reg Add HKLM\SOFTWARE\Classes\InternetShortcut\shell\open\command /VE /D "\"%ProgramFiles%\Opera_AC\OperaAC.exe\" \"%%1\"" /F

Обратите внимание на экранирование спецсимволов (кавычек, процентов).
Аналогичный inf-файл:
[Version]
Signature="$Windows NT$"

[DefaultInstall]
AddReg = O.AddReg

[O.AddReg]
HKLM,"SOFTWARE\Classes\htmlfile\shell",,,"OperaAC"
HKLM,"SOFTWARE\Classes\htmlfile\shell\open\command",,,"""%16422%\Opera_AC\OperaAC.exe"" ""%1"""
HKLM,"SOFTWARE\Classes\InternetShortcut\shell\open\command",,,"""%16422%\Opera_AC\OperaAC.exe"" ""%1"""

di2blo
20-02-2008, 20:14
Vadikan,
вот этот твик
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PagingFiles"="C:\pagefile.sys 700 700"его надо .reg? или .cmd

boss911
20-02-2008, 20:27
di2blo

В принципе *.cmd , но операции update для команды reg не знаю. Наберите в командной строке -
reg /?

di2blo
20-02-2008, 20:43
boss911
Там есть тольво вот такие параметры :
REG QUERY
REG ADD
REG DELETE
REG COPY
REG SAVE
REG RESTORE
REG LOAD
REG UNLOAD
REG COMPARE
REG EXPORT
REG IMPORT
update там нету

Vadikan
21-02-2008, 00:39
di2blo, тогда делайте REG ADD.

di2blo
21-02-2008, 16:37
Vadikan,
Сделал с параметром REG ADD .cmd файл,ключ добавился в реестр но параметры виртуальной памяти не изменились(

LonerD
21-02-2008, 18:35
Подскажите, пожалуйста, как избавиться от этого (чтоб система при ненахождении файла не пыталась его искать):

http://img85.imageshack.us/img85/2482/20080221172125hy8.jpg

И какая ветка реестра отвечает за положение адресной строки (или если не реестр, то как можно втихую оформить данную настройку):

http://img85.imageshack.us/img85/2453/20080221172311yl6.jpg

Vadikan
21-02-2008, 23:49
di2blo, прошу прощения, я дал неверную команду. Конечно, так работать не будет. Попробуйте

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v PagingFiles /t REG_MULTI_SZ /d "C:\pagefile.sys 700 700"

Droperidolum
22-02-2008, 02:00
Здравствуйте!
Подскажите пожалуйста как сделать чтобы во всех папках на свежей винде уже было:
1. сортировка значков "по типу"
2. вид "список"

Интуитивно предполагаю (с помощью regshot) что надо работать в районе
HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags\

пробовал согласно рекомендациям создавать
[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags\AllFolders\Shell]
"WFlags"=dword:00000000
"Sort"=dword:00000002
"Vid"=hex(7):30,00,45,00,31,00,46,00,41,00,35,00,45,00,30,00,2d,00,33,00,35,00,\
37,00,33,00,2d,00,31,00,31,00,43,00,46,00,2d,00,41,00,45,00,36,00,39,00,2d,\
00,30,00,38,00,30,00,30,00,32,00,42,00,32,00,45,00,31,00,32,00,36,00,32,00,\
00,00,00,00
"SortDir"=dword:00000001
но почему-то не работает :(

Где хранятся параметры, которые изменяются кнопкой в свойствах папки "применить ко всем папкам"?

Спасибо!




© OSzone.net 2001-2012