Как я могу отформатировать этот путь для работы в качестве значения ключа реестра?

C:\Program Files (x86)\DotR\DotR.exe

Я знаю, что мне нужно избежать обратной косой черты, как C:\\Program Files (x86)\\DotR\\DotR.exe но это все еще не работает. Нужно ли обрабатывать пробелы и символы скобок как специальные символы, и если да, то как?

Редактировать с подробностями: я запускаю небольшое консольное приложение из контекстного меню. Когда я сохраняю его в C:\DotR.exe и добавляю в HKEY_CLASSES_ROOT\Folder\shell\DotR\ Значение C:\\DotR.exe %1 это работает нормально, но когда я пытаюсь сделать это C:\\Program Files(x86)\\DotR\\DotR.exe %1 Я получаю сообщение об ошибке, в котором говорится, что приложение не найдено. Я хочу сохранить его в программных файлах, а не в корне.

1 ответ

Решение

Как именно вы пытаетесь добавить это?

Я подозреваю, что ваша основная проблема заключается в том, что вам нужны кавычки вокруг имени.

"C:\Program Files (x86)\DotR\DotR.exe" %1

Если вы добавляете значение с помощью regedit.exe Редактор графического интерфейса, как строковое значение, то вам не нужно экранировать \ или " персонажи. Графический интерфейс будет обрабатывать выход, вам просто нужно добавить кавычки.

Если вы добавляете его с .reg подать потом \ символы должны быть экранированы, вам также нужно экранировать символ ". Таким образом, значение REG_SZ "c:\asdf\asdf" будет выглядеть так

[HKEY_CURRENT_USER\Temp]
"asdf"="\"c:\\asdf\\asdf\""
Другие вопросы по тегам