Поместите значение в реестр, используя.reg или.bat или.vbs с типом REG_EXPAND_SZ
Мой рег:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\cultest]
@="URL:cultest Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\cultest\DefaultIcon]
@="%APPDATA%\\musicDownloader\\test.bat,0"
[HKEY_CLASSES_ROOT\cultest\shell]
[HKEY_CLASSES_ROOT\cultest\shell\open]
[HKEY_CLASSES_ROOT\cultest\shell\open\command]
@="%APPDATA%\\musicDownloader\\test.bat \"%1\""
Это.reg создает ключи, но моя проблема в том, что я хочу использовать%APPDATA%, и я не могу сделать это с REG_SZ. Можно использовать с REG_EXPAND_SZ, но я не знаю, как это изменить.
2 ответа
Из вашего комментария к другому ответу я предполагаю, что вы на самом деле хотите поместить буквенную строку "%APPDATA%" в раздел реестра, вместо того, чтобы% APPDATA% разрешал себя к его фактическому значению.
Это может быть достигнуто путем экранирования специальных символов, то есть%, в командном файле. Вы просто заменяете каждый %
с %%
,
Я должен признать, что я никогда не видел, чтобы кто-то использовал такой раздел реестра. Как правило, это фактический путь, который вы хотите использовать. Если этот ключ реестра предназначен для вашей собственной программы, вы, конечно, можете продолжать и делать все, что вам нравится, при чтении / записи ключей. Но если вы пытаетесь использовать чужую программу, я бы спросил, действительно ли то, что вы пытаетесь сделать, это то, что вы хотите сделать. Например, если вы хотите, чтобы% APPDATA% разрешался по-разному в зависимости от пользователя компьютера, вы можете поместить эти ключи реестра в область HKEY_CURRENT_USER, и тогда у каждого пользователя может быть свое значение.
Вы можете поместить в файл.bat следующее:
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v "SomeValue" /t REG_EXPAND_SZ /d "%SomeVariable%"
Итак, для вашего примера, вы можете использовать:
reg add "HKEY_CLASSES_ROOT\cultest\shell\open\command" /v "musicDownloader" /t REG_EXPAND_SZ /d "%APPDATA%\\musicDownloader\\test.bat \"%1\""
Вышеприведенное не проверено, но должно дать представление о том, как добавить значения reg для файла.bat.