|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » [архив].: NSIS - все вопросы :. |
|
[архив].: NSIS - все вопросы :.
|
Ветеран Сообщения: 1216 |
Профиль | Отправить PM | Цитировать
|
|
Отправлено: 23:35, 17-06-2006 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать Подскажите, пожалуйста, как сделать:
1) установщик должен добавить строку в файл "N.cfg" в раздел [Main] В этом разделе у пользователя уже имеются записи: аа.1=путь1 аа.2=путь2 ... аа.х=путь3 При этом количество пунктов мне неизвестно. Добавляемая строка должна быть "аа.х+1=мой путь". При этом "мой путь" определяется как папка в установленной $INSTDIR (берется из реестра). 2) установщик должен дописать определенный текст в конец файла "XX.xml" (encoding="Windows-1252") <xx> <Name>МММ</Name> <Path>$INSTDIR\xx\МММ.exe</Path> </xx> |
Отправлено: 12:45, 08-01-2012 | #2191 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Цитата diakov:
Цитата romgun:
Цитата romgun:
Приводите свою реализацию задачи, вместе разберем и подправим: толику мозги добавим скрипту Цитата romgun:
Цитата romgun:
http://nsis.sourceforge.net/XML_plug-in - пробуйте плагом |
|||||
------- Отправлено: 14:12, 08-01-2012 | #2192 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Наткнулся на плагин: InvokeShellVerb Plugin for NSIS
Этот плагин вызывает командную оболочку Shell: правой клавишей мышью - контектстное меню файлов и папок и вызывает выбранный пункт меню на исполнение Но напрямую использовать плагин совершенно неудобно, даже сказал бы - невозможно без определенных знаний. Поэтому написал хедер для удобного использования плагина: Сохраняем файл InvokeShellVerb.nsh (для юникодной NSIS - в любом юникоде) рядом со скриптом или в папке NSIS\Include Скачиваем плагин, копируем InvokeShellVerb.dll (для юникодной NSIS файл берем из папки Unicode архива) в NSIS\Plugins Далее подключаем хедер к телу скрипта: |
------- Последний раз редактировалось kotkovets, 08-01-2012 в 17:07. Отправлено: 16:58, 08-01-2012 | #2193 |
Старожил Сообщения: 322
|
Профиль | Отправить PM | Цитировать Не подскажет кто как средствами nsis создать переменную среды? сколько ни искал как это делать через реестр или командную строку - безуспешно... все на что натыкаюсь: http://support.microsoft.com/kb/310519/ru но делать для этого AutoIt скрипт и запихивать его в инсталятор - ИМХО некрасиво, может есть другой способ? (если это можно сделать, то может можно еще и дополнить существующую переменную?)
через "set variablename=значение" переменная не создается, точнее не остается в системе после отработки команды.... Сори, столько искал не мог найти, написал вопрос - нашел сам, сделать можно через реестр в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\ Только до сих пор не понимаю как дописать переменную, тоесть к примеру есть переменная "path=c:\windows", а надо "path=c:\windows;c:\my_papka" |
------- Последний раз редактировалось XCV, 09-01-2012 в 15:56. Отправлено: 15:37, 09-01-2012 | #2194 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать Цитата romgun:
Цитата kotkovets:
Но можно ли как то реализовать подсчет? Пока не могу найти ничего подходящего.. Сама строка вроде бы добавляется через WriteINIStr... |
||
Отправлено: 15:49, 09-01-2012 | #2195 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать к сожалению ближайшую неделю полноценно не смогу помочь - в командировке.
XCV читайте сначала сначала значение patch в переменную $0, а затем записывате в реестр: "$0;My papka" rogmun смотрите в папке примеров - WordFunc. Можно подсчитать количество совпадений части общих символов строки: аа.. |
------- Отправлено: 20:33, 09-01-2012 | #2196 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать kotkovets, возвращайтесь скорее ))
Нужно применять WordFind? В мануале вроде как речь идет о поиске файлов или я что-то не понял? Example (Sum of words): Section ${WordFind} "C:\io.sys C:\logo.sys C:\WINDOWS" " C:\" "#" $R0 ; $R0="3" SectionEnd в итоге дает $R0=0. |
Последний раз редактировалось romgun, 10-01-2012 в 21:06. Отправлено: 15:52, 10-01-2012 | #2197 |
Старожил Сообщения: 322
|
Профиль | Отправить PM | Цитировать Цитата kotkovets:
Изначально patch имеет тип "reg_expand_sz", а после того как я делаю: ReadRegStr $0 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "Path" WriteRegStr HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "Path" "$0;$INSTDIR" но как определить тогда какое должно быть значение? "$0;$INSTDIR" - не прокатывает =( |
|
------- Отправлено: 18:26, 10-01-2012 | #2198 |
VIP Person Сообщения: 1595
|
Профиль | Отправить PM | Цитировать XCV,
Цитата XCV:
Цитата XCV:
|
||
------- Отправлено: 19:56, 10-01-2012 | #2199 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать XCV если ваша библиотека, то определите свой ключ в реестре, читаемый библиотекой,так проще наверно будет.
rogmun под рукой нет справочных материалов нет,вам нужно читать файл построчно в цикле - readfromend(по индек найдете в справке, в теме тоже есть примеры) в цикле вы можете обрезать строки до нужного значения в др. переменную(strcpy в $0) через strcmp или через оператор: В $1 количество совпадений |
------- Последний раз редактировалось kotkovets, 10-01-2012 в 22:42. Отправлено: 22:30, 10-01-2012 | #2200 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Мультимедиа - WinAmp .:[ обсуждение всех версий ]:. | ssaram | Программное обеспечение Windows | 406 | 12-02-2022 19:45 | |
WinstyleMonitor .:[все вопросы]:. | Mr dUSHA | Проект WinStyle | 331 | 12-02-2014 13:15 | |
Delphi - Delphi .: [все вопросы] :. | Serega | Программирование и базы данных | 94 | 04-05-2013 18:45 | |
Доступ - Никак не удаляются файлы (AVI и все остальные форматы) .:[все вопросы]:. | Microsoft Windows 2000/XP | 105 | 30-06-2010 11:58 | ||
Вопросы по создателю инсталляций NSIS | MaxDELETE | Программное обеспечение Windows | 14 | 04-07-2007 10:01 |
|