|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » .: NSIS - все вопросы :. часть 2. |
|
.: NSIS - все вопросы :. часть 2.
|
Ветеран Сообщения: 1216 |
Профиль | Отправить PM | Цитировать
Данная тема предназначена для обсуждения вопросов, связанных с инсталлятором Nullsoft Scriptable Install System, или просто NSIS. Сайт приложения. Описание: Текущая версия: NSIS 3.05 от 15 декабря 2019 года Скачать | Архив сборок версии Первая часть этой темы Скачать первую часть этой темы одним архивом ВНИМАНИЕ! прежде, чем задать вопрос, почитайте, где Вы найдете ответы на большинство вопросов: Справочник по NSIS - создан силами нашего сообщества. Руководство пользователя. Перевод – Поляков А.В, зеркало Документация Утилиты разработчика Расширение функциональности Примеры скриптов на нашем форуме Скрипт NSIS для перепаковки AIMP2+Сборки Тема для Notepad++(пример парсинга XML) Достоинства Ещё немного полезной информации: |
|
------- Отправлено: 12:02, 09-12-2012 |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Vincent7:
Цитата K.A.V.:
Я вам в миллионный раз повторяю, читайте наш Справочник, читайте MSDN для знакомства с сообщениями Windows (в предыдущем посте я вас натолкнул на решение вашей задачи) Но, видимо, вам всё ещё лень сидеть, читать и разбираться Так что я боюсь, что вам всё-таки нужно перестать здесь выпрашивать готовые коды и начать читать справочник, смотреть примеры и вникать в смысл написания NSIS-инсталляторов А "помогать" лично вам, лично у меня уже нет желания, потому что: 1. Вы упорно отказываетесь читать и изучать то, что вам советуют 2. На протяжении всего времени по поводу вашей задачи вы так и не объяснили суть того, что нужно сделать: какой софт имеете, какие задачи стоят и какой функционал реализовать в какой последовательности А насчет лички у меня одинаковое отношение ко всем - читайте подпись Цитата:
|
|||
------- Отправлено: 23:05, 12-12-2013 | #841 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 96
|
Профиль | Отправить PM | Цитировать а я и говорил'так не хочу', 'то не хочу' ... просто у меня не получается сделать задуманное... я с nsis худо бедно работаю а msdn вообще темный лес...
|
Отправлено: 01:26, 13-12-2013 | #842 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Vincent7, ну не судьба, зачем насиловать себе мозг и K.A.V. ?
|
------- Отправлено: 01:54, 13-12-2013 | #843 |
Ветеран Сообщения: 3206
|
Профиль | Отправить PM | Цитировать Цитата kotkovets:
например: ${DisableX64FSRedirection} Exec "explorer.exe" ${EnableX64FSRedirection} Exec "explorer.exe" Запускается проводник из C:\Windows\explorer.exe в обоих случаях. Тоже с редактором реестра. или: ${EnableX64FSRedirection} MessageBox MB_OK $SYSDIR ${DisableX64FSRedirection} MessageBox MB_OK $SYSDIR В обоих случаях $SYSDIR = C:\Windows\System32 |
|
------- Последний раз редактировалось wolkow70, 13-12-2013 в 14:09. Отправлено: 13:13, 13-12-2013 | #844 |
Ветеран Сообщения: 2358
|
Профиль | Отправить PM | Цитировать Цитата Vincent7:
Сообщения WM_SETTEXT почему то не передаются в консольное окно (у меня так, может чего не учёл...) Говорят, можно использовать WM_COPYDATA или SendMessageTimeout, не пробовал, да и возиться неохота... Но можно "набрать" команду в консоли с помощью WM_CHAR. Лажа вообщем то, но работает... Например, пошлём в консоль и выполним команду DIR : OutFile ConsoleWindow.exe !include "WinMessages.nsh" Section Exec "$SYSDIR\cmd.exe" loop: FindWindow $0 "ConsoleWindowClass" "$SYSDIR\cmd.exe" IsWindow $0 0 loop System::Call 'user32::SetForegroundWindow(i r0)' ; так просто, нажмём Enter... Sleep 300 SendMessage $0 ${WM_CHAR} "0x0D" "0" ; таперича наберём DIR Sleep 100 SendMessage $0 ${WM_CHAR} 0x44 "0" Sleep 100 SendMessage $0 ${WM_CHAR} 0x49 "0" Sleep 100 SendMessage $0 ${WM_CHAR} 0x52 "0" Sleep 300 SendMessage $0 ${WM_CHAR} "0x0D" "0" SectionEnd |
|
Последний раз редактировалось MKN, 13-12-2013 в 16:08. Отправлено: 15:36, 13-12-2013 | #845 |
Пользователь Сообщения: 96
|
Профиль | Отправить PM | Цитировать MKN, я делаю так
!include "WinMessages.nsh" OutFile "Test.exe" ShowInstDetails show section "f" ExecDos::exec /NOUNLOAD /ASYNC /Detailed '"$SYSDIR\cmd.exe" /c $EXEDIR\sisInstall.exe extractAll I:\sku.sis D:\h' sleep 2000 System::Call 'user32::GetWindowThreadProcessId(ir0, *l.r0)' System::Call 'kernel32::AttachConsole(ir0)i.r0' System::Call 'kernel32::GetStdHandle(i -11)i.r0' FindWindow $0 "ConsoleWindowClass" "$SYSDIR\cmd.exe" FileWrite $0 "D:\h" sleep 2000 enter: SendMessage $0 ${WM_CHAR} "0x0D" "0" sleep 60 goto enter sectionend |
Отправлено: 00:37, 14-12-2013 | #846 |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Vincent7:
Цитата Vincent7:
FindWindow $0 "ConsoleWindowClass" "$SYSDIR\cmd.exe" System::Call 'user32::GetWindowThreadProcessId(ir0, *l.r0)' System::Call 'kernel32::AttachConsole(ir0)i.r0' System::Call 'kernel32::GetStdHandle(i -11)i.r0' FileWrite $0 "D:\h" Цитата Vincent7:
Цитата MKN:
|
||||
------- Отправлено: 02:41, 14-12-2013 | #847 |
Пользователь Сообщения: 96
|
Профиль | Отправить PM | Цитировать Caption "PressKey.exe" OutFile "PressKey.exe" Function .onInit FindWindow $0 "ConsoleWindowClass" "Администратор: $SYSDIR\cmd.exe" ; Ищем консольное окно, в котороее будем отправлять информацию IsWindow $0 +2 0 ; Если окно найдено - продолжаем, если нет - сообщение с ошибкой и закрытие прил MessageBox MB_OK|MB_ICONSTOP "Окно не найдено" idok exit System::Call 'user32::GetWindowThreadProcessId(ir0, *l.r0)' ; По найденному handle окна определяем PID процесса, к которому принадлежит окно System::Call 'kernel32::AttachConsole(ir0)i.r0' ; В команду AttachConsole послыаем PID процесса, чтобы писать именно в нашу кома System::Call 'kernel32::GetStdHandle(i -11)i.r0' ; Получаем дескриптор ввода данных консоли FileWrite $0 "TEST started...hide window after 3 seconds" FileWrite $0 "$\n$\n$\n$\n================= Hello, Vincent7 !!! =============== FileWrite $0 "$\n$\n================= Hello, Vincent7 !!! =================" FileWrite $0 "$\n$\n================= Hello, Vincent7 !!! =================" FileWrite $0 "$\n$\n================= Hello, Vincent7 !!! =================" ; Записываем информацию в консоль |
Отправлено: 13:31, 14-12-2013 | #848 |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Vincent7:
Цитата Vincent7:
Очки наденьте тяжелый случай, у меня не хватит терпения, я пожалуй пас... Цитата K.A.V.:
|
|||
------- Отправлено: 15:32, 14-12-2013 | #849 |
Пользователь Сообщения: 110
|
Профиль | Сайт | Отправить PM | Цитировать Vincent7, после первой строки === Hello, Vincent7 !!!== поставьте кавычки ( " ). Дальше - не знаю, т.к. приведенный огрызок даже не скомпилируется.
|
Отправлено: 15:51, 14-12-2013 | #850 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Инфо - [ликбез] Помощь начинающим .:[все вопросы]:. часть 2 | dimadr | Наборы обновлений для Windows XP/2003/Windows 7 | 267 | 14-02-2020 08:25 | |
[архив].: NSIS - все вопросы :. | kotkovets | Автоматическая установка приложений | 3387 | 09-12-2012 11:56 | |
Инфо - [ликбез] Помощь начинающим .:[все вопросы]:. часть 1 | jameszero | Наборы обновлений для Windows XP/2003/Windows 7 | 1491 | 22-07-2011 22:42 | |
Выбор|модернизация процессора .:[все вопросы]:. Часть I | Myxa | Выбор отдельных компонентов компьютера и конфигурации в целом | 1845 | 01-01-2011 19:18 | |
Вопросы по создателю инсталляций NSIS | MaxDELETE | Программное обеспечение Windows | 14 | 04-07-2007 10:01 |
|