7
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 ответ1

13

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

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

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

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .