|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » [архив].: NSIS - все вопросы :. |
|
[архив].: NSIS - все вопросы :.
|
Ветеран Сообщения: 1216 |
|
|
Отправлено: 23:35, 17-06-2006 |
![]() Старожил Сообщения: 166
|
Профиль | Отправить PM | Цитировать Помогите, пожалуйста, с запросом к БД.
Нужно сделать запрос к 2 БД: Firebird 2.1 и MS SQL 2005 и выше. Почти готов инсталлятор, осталось лишь сделать запрос и сравнить результат с числом... |
Отправлено: 19:01, 11-04-2012 | #2531 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Цитата MKN:
этот флаг заставит файл удалится при следущей перезагрузке. Цитата MKN:
УЗНАТЬ какой процесс держит файл и грохать процесс. читай в справке: » Работа с процессами с помощью NSIS |
||
------- Отправлено: 01:17, 12-04-2012 | #2532 |
Ветеран Сообщения: 3206
|
Профиль | Отправить PM | Цитировать Цитата MKN:
Предварительно резрегистрируем файл, или, если комманда не выполняется через рег-сервер, удаляем все ключи реестра, относимые к dll. ExecWait 'taskkill /F /IM explorer.exe' $0 DetailPrint "taskkill exit: [ $0 ]" Sleep 500 StrCmp $0 0 0 +2 Exec "explorer.exe" Delete "$INSTDIR\menu.dll" ${If} ${FileExists} "$INSTDIR\menu.dll" Delete /REBOOTOK "$INSTDIR\menu.dll" SetRebootFlag true ${Else} SetRebootFlag false ${EndIf} |
|
------- Последний раз редактировалось wolkow70, 12-04-2012 в 06:14. Отправлено: 06:04, 12-04-2012 | #2533 |
Ветеран Сообщения: 2373
|
Профиль | Отправить PM | Цитировать kotkovets, wolkow70,
Вы наверное, не так меня поняли или я не точно выразился... То что вы сказали , зто понятные рядовые ситуации. Здесь же, файл или ключ "охраняет" защищает система и пока не получишь(не выставишь) системные права и полный доступ к файлу (ключу) - никакой Rebootok ОК не поможет и ничего с файлом и ключом сделать нельзя. (и никакой процесс этот файл не "держит", а перезапуск оболочки - это будет последний этап для некоторых случаев) . Интересует , что можно предпринять в таких случаях средствами NSIS ? Т.е. каким образом организовать назначение системных прав и полного доступа к файлу и ключу реестра, при чём без сторонних утилит (типа Cacls.exe , SubInACL.exe и т.п. ) Почему я и помянул API, т.к. видел инфу как раз по этому поводу с упоминание MoveFileEx с флагом MOVEFILE_DELAY_UNTIL_REBOOT Только я в API ни черта не понимаю. |
Последний раз редактировалось MKN, 12-04-2012 в 10:43. Отправлено: 09:11, 12-04-2012 | #2534 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Цитата MKN:
Цитата:
|
||
------- Последний раз редактировалось kotkovets, 12-04-2012 в 11:08. Причина: "File" "New_File" Отправлено: 11:00, 12-04-2012 | #2535 |
Ветеран Сообщения: 3206
|
Профиль | Отправить PM | Цитировать Товарищи, не пойму почему
IntOp $0 ${SF_SELECTED} | ${SF_RO} SectionSetFlags ${Install} $0 ТАК РАБОТАЕТ! IntOp $0 ${SF_SELECTED} | ${SF_RO} | ${SF_BOLD} SectionSetFlags ${Install} $0 ТАК НЕ РАБОТАЕТ! |
------- Отправлено: 11:07, 12-04-2012 | #2536 |
Ветеран Сообщения: 2373
|
Профиль | Отправить PM | Цитировать kotkovets,
Так как быть то с удалением таких файлов и ключей реестра ? Delete /Rebootok "File" - файл не удаляет. Что делать с ключами - не ясно... |
Отправлено: 11:12, 12-04-2012 | #2537 |
Ветеран Сообщения: 3206
|
Профиль | Отправить PM | Цитировать Еще такую задачку не знаю как проще решить:
InstallDir "$PROGRAMFILES\${PRODUCT_NAME}" Если директория установки не отличается от C:\Program Files\Opera прописанной в файле opera_install_log.xml то менять значение в файле не нужно, если директория установки выбрана другая, то вызвать функцию Call ReplaceLinesInFile. То есть тут проверка нужна не только на $PROGRAMFILES\${PRODUCT_NAME} , но и с учетом буквы диска. MKN В этом разделе не пробовали удалять предварительно ключи? DeleteRegValue HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls" "$SYSDIR\px.dll" |
------- Последний раз редактировалось wolkow70, 12-04-2012 в 11:30. Отправлено: 11:12, 12-04-2012 | #2538 |
Ветеран Сообщения: 3206
|
Профиль | Отправить PM | Цитировать Цитата MKN:
!include "Library.nsh" Name "Library Test" OutFile "Library Test.exe" InstallDir "$TEMP\Library Test" Page directory Page instfiles XPStyle on RequestExecutionLevel user !define TestDLL '"${NSISDIR}\Plugins\LangDLL.dll"' !define TestEXE '"${NSISDIR}\Contrib\UIs\default.exe"' Section !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib DLL NOTSHARED NOREBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib DLL NOTSHARED REBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib DLL NOTSHARED NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLL NOTSHARED REBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLL NOTSHARED NOREBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLL NOTSHARED REBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLL NOTSHARED NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib TLB NOTSHARED REBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib TLB NOTSHARED NOREBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib TLB NOTSHARED REBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib TLB NOTSHARED NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLLTLB NOTSHARED REBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLLTLB NOTSHARED NOREBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLLTLB NOTSHARED REBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLLTLB NOTSHARED NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib DLL $0 REBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib DLL $0 NOREBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib DLL $0 REBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib DLL $0 NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLL $0 REBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLL $0 NOREBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLL $0 REBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLL $0 NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib TLB $0 REBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib TLB $0 NOREBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib TLB $0 REBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib TLB $0 NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLLTLB $0 REBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLLTLB $0 NOREBOOT_PROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLLTLB $0 REBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGDLLTLB $0 NOREBOOT_NOTPROTECTED ${TestDLL} $INSTDIR\test.dll $INSTDIR !insertmacro InstallLib REGEXE $0 REBOOT_PROTECTED ${TestEXE} $INSTDIR\test.exe $INSTDIR !insertmacro InstallLib REGEXE $0 NOREBOOT_PROTECTED ${TestEXE} $INSTDIR\test.exe $INSTDIR !insertmacro InstallLib REGEXE $0 REBOOT_NOTPROTECTED ${TestEXE} $INSTDIR\test.exe $INSTDIR !insertmacro InstallLib REGEXE $0 NOREBOOT_NOTPROTECTED ${TestEXE} $INSTDIR\test.exe $INSTDIR WriteUninstaller $INSTDIR\uninstall.exe SectionEnd Section uninstall !insertmacro UninstallLib DLL NOTSHARED NOREMOVE $INSTDIR\test.dll !insertmacro UninstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib DLL NOTSHARED NOREBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib DLL NOTSHARED REBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib DLL NOTSHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLL NOTSHARED NOREMOVE $INSTDIR\test.dll !insertmacro UninstallLib REGDLL NOTSHARED REBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLL NOTSHARED NOREBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLL NOTSHARED REBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLL NOTSHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib TLB NOTSHARED NOREMOVE $INSTDIR\test.dll !insertmacro UninstallLib TLB NOTSHARED REBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib TLB NOTSHARED NOREBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib TLB NOTSHARED REBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib TLB NOTSHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB NOTSHARED NOREMOVE $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB NOTSHARED REBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB NOTSHARED NOREBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB NOTSHARED REBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB NOTSHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib DLL SHARED NOREMOVE $INSTDIR\test.dll !insertmacro UninstallLib DLL SHARED REBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib DLL SHARED NOREBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib DLL SHARED REBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib DLL SHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLL SHARED NOREMOVE $INSTDIR\test.dll !insertmacro UninstallLib REGDLL SHARED REBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLL SHARED NOREBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLL SHARED REBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLL SHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib TLB SHARED NOREMOVE $INSTDIR\test.dll !insertmacro UninstallLib TLB SHARED REBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib TLB SHARED NOREBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib TLB SHARED REBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib TLB SHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB SHARED NOREMOVE $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB SHARED REBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB SHARED NOREBOOT_PROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB SHARED REBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGDLLTLB SHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.dll !insertmacro UninstallLib REGEXE SHARED NOREMOVE $INSTDIR\test.exe !insertmacro UninstallLib REGEXE SHARED REBOOT_PROTECTED $INSTDIR\test.exe !insertmacro UninstallLib REGEXE SHARED NOREBOOT_PROTECTED $INSTDIR\test.exe !insertmacro UninstallLib REGEXE SHARED REBOOT_NOTPROTECTED $INSTDIR\test.exe !insertmacro UninstallLib REGEXE SHARED NOREBOOT_NOTPROTECTED $INSTDIR\test.exe SectionEnd |
|
------- Отправлено: 11:28, 12-04-2012 | #2539 |
Ветеран Сообщения: 2373
|
Профиль | Отправить PM | Цитировать wolkow70,
Без прав и доступа к файлу - ничего не сделать. Об этом и речь. |
Отправлено: 11:33, 12-04-2012 | #2540 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Мультимедиа - 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 |
|