Конфигурация NSIS через Cmake не удается правильно установить двойные кавычкиC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Конфигурация NSIS через Cmake не удается правильно установить двойные кавычки

Сообщение Anonymous »

Я новичок в NSIS, я пытаюсь добавить две команды установки, которые добавят значения реестра для моего приложения, конечная цель состоит в том, чтобы эти значения выглядели следующими: «PATH \ to \ Executive» «%1» < /p>
Проблема заключается в том, что NSIS не принимает формата для этого конечного результата: < /p>
set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
WriteRegStr HKCR '.acmi\\OpenWithProgids' 'MyApp.myext' ''
WriteRegStr HKCR 'Applications\\MyApp.exe\\shell\\open\\command' '' '\"$INSTDIR\\bin\\MyApp.exe\" \"%1\"'
")
< /code>
Это результаты в странное значение; $ instdir \ bin \ myapp.exe ""%1; где первое и последнее «превращается в; < /p>
set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
WriteRegStr HKCR '.acmi\\OpenWithProgids' 'MyApp.myext' ''
WriteRegStr HKCR 'Applications\\MyApp.exe\\shell\\open\\command' '' '\\\"$INSTDIR\\bin\\MyApp.exe\" \"%1\\\"'
")
< /code>
Это сделает «$ instdir \ bin \ myApp.exe;%1», так что снова первый и последний беспрепятственный »превратится в; а также у меня есть дополнительное \ на борту и конец < /p>
set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
WriteRegStr HKCR '.acmi\\OpenWithProgids' 'MyApp.myext' ''
WriteRegStr HKCR 'Applications\\MyApp.exe\\shell\\open\\command' '' '\\\"$INSTDIR\\bin\\MyApp.exe\\\" \\\"%1\\\"'
")
< /code>
избежать всех «не приведет к тому, что нет; но exta \ все равно сломает путь ... < /p>
Что следует сделать, чтобы получить необходимый конечный результат?» WriteRegstr команды в отдельный файл .nsh и установите cpack_nsis_extra_install_commands, чтобы включить файл < /p>
nsis_registry.nsh
WriteRegStr HKCR ".acmi\OpenWithProgids" "MyApp.myext" ""
WriteRegStr HKCR "Applications\MyApp.exe\shell\open\command" "" '"$INSTDIR\bin\MyApp.exe" "%1"'
< /code>
cmakelists.txt
...
set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
!include ${CMAKE_SOURCE_DIR}\\NSIS_registry.nsh
")
...


Подробнее здесь: https://stackoverflow.com/questions/794 ... -correctly
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Экранируйте только одинарные кавычки (оставляйте только двойные кавычки) с помощью htmlspecialchars()
    Anonymous » » в форуме Php
    0 Ответы
    98 Просмотры
    Последнее сообщение Anonymous
  • Как правильно запустить мое приложение из сценария установщика NSIS
    Anonymous » » в форуме C++
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • CSV Writer дважды добавляет двойные кавычки в Python
    Anonymous » » в форуме Python
    0 Ответы
    94 Просмотры
    Последнее сообщение Anonymous
  • Не удалось удалить двойные кавычки из строки JSON.
    Anonymous » » в форуме Jquery
    0 Ответы
    57 Просмотры
    Последнее сообщение Anonymous
  • Удалить двойные кавычки из данных, разделенных табуляцией, в Python
    Anonymous » » в форуме Python
    0 Ответы
    32 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»