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

Как отформатировать этот путь, чтобы он работал как значение ключа реестра?
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я получаю сообщение об ошибке, в котором говорится, что приложение не найдено. Я хочу сохранить его в program files, а не в корне C.

решение1

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

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

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

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

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

[HKEY_CURRENT_USER\Temp]
"asdf"="\"c:\\asdf\\asdf\""

Связанный контент