![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 6] |
|
Скрипты Inno Setup. Помощь и советы [часть 6]
|
Ветеран Сообщения: 1274 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: |
|
Отправлено: 19:06, 28-03-2013 |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать R.i.m.s.k.y.,
Цитата R.i.m.s.k.y.:
Какая из них тебе нужна не заню Предполагаю - для каждого действия с твоей стороны нужна своя привилегия, а не одна на все! Если используешь несколько подряд. Не забывай удалять старую (при помощи булев аргумента Enable) перед настройкой новой UPD: Кажись это всё-таки то, что тебе нужно. Вот статья http://www.rsdn.ru/article/baseserv/privileges.xml там написано: " Учетные записи пользователей и групп являются доверенными объектами системы. Доверенные объекты – это сущности, которым может быть предоставлен или отклонен доступ к защищаемым объектам или ресурсам системы. Привилегии – это права доверенного объекта на совершение каких-либо действий по отношению ко всей системе." |
|
Последний раз редактировалось Johny777, 20-07-2013 в 13:08. Причина: updated Отправлено: 12:42, 20-07-2013 | #821 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Johny777, крокодил не растет, регистрация валится с ошибкой 0х05
if AdjustSelfProcessPrivileges(SE_BACKUP_NAME, True) then //SE_TCB_NAME try MsgBox('Privilege Ajusted', mbInformation, MB_OK); MsgBox('Do something', mbInformation, MB_OK); RegisterServer(true, 'c:\Program Files (x86)\LAV\LAVVideo.ax', False); finally // if AdjustSelfProcessPrivileges(SE_DEBUG_NAME, False) then MsgBox('Privilege Not Ajusted', mbInformation, MB_OK); end else MsgBox('Error', mbInformation, MB_OK); |
------- Отправлено: 14:04, 20-07-2013 | #822 |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать Цитата R.i.m.s.k.y.:
// MsgBox( SysErrorMessage(DLLGetLastError), mbError, MB_OK ); можно вызывать после каждой функции если она не отработала ""Отказано в доступе"". Значит у тебя нет привилегии/права делать это. Пробуй другие привилегии, пока не получится. Метод проб и ошибок - тоже метод ![]() |
|
Отправлено: 14:35, 20-07-2013 | #823 |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Johny777, я знаю что 0х05 "ты не лев, недостаточно прав"
SE_TCB_NAME - тоже самое такой еще вопрос знатокам - RunAsOriginalUser должен чье имя возвращать? originalUser или админа введшего пароль? инсталл запускается двойным кликом (не ПКМ - запуск от...), UAC спрашивает логин/пасс админа, и в c:\1\1.txt появляется имя одмина, хотя КМК там должно быть имя User'а тк он вошел в систему |
------- Отправлено: 17:14, 20-07-2013 | #824 |
Пользователь Сообщения: 80
|
Профиль | Отправить PM | Цитировать Ребят, какой код надо написать, чтобы Inno понял, что на этой форме должен быть выбор компонентов?
|
Отправлено: 22:24, 20-07-2013 | #825 |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Mat_y, а стандартый [Components] чем не устраивает?
|
------- Отправлено: 22:37, 20-07-2013 | #826 |
Ветеран Сообщения: 517
|
Профиль | Отправить PM | Цитировать Цитата R.i.m.s.k.y.:
Цитата R.i.m.s.k.y.:
Цитата Mat_y:
|
|||
Последний раз редактировалось saurn, 20-07-2013 в 23:05. Отправлено: 22:52, 20-07-2013 | #827 |
Пользователь Сообщения: 80
|
Профиль | Отправить PM | Цитировать Цитата:
Вот окно приветствия: ![]() Вот выбор директории: ![]() И установка: ![]() Я продублировал окно с выбором директории... изменил все переменные, убрал лишнее... а вот как туда вставить поле с выбором компонентов... сижу, второй день туплю. ВОТ пример создания старницы выбора директории: 1) Создаются кнопки, выбор директории, назад, далее: procedure DirBrowseBtnClick(h:HWND); begin WizardForm.DirBrowseButton.OnClick(WizardForm.DirBrowseButton); AppLabel.Caption:=WizardForm.DirEdit.Text; AppLabel2.Caption:=WizardForm.DirEdit.Text; end; procedure BackBtnClick(h:HWND); begin WizardForm.BackButton.OnClick(WizardForm.BackButton); end; procedure OKBtnClick(h:HWND); begin WizardForm.NextButton.OnClick(WizardForm.NextButton); begin HideWelcomePage; HideSelectDirPage; ShowSelectComponentsPage; end; end; procedure CreateSelectDirPage; begin if CanUseXvid then begin vPanel2:=TPanel.Create(WizardForm); with vPanel2 do begin Visible:=False; Parent:=WizardForm; SetBounds(32,32,704,272); end; mciSendString('open '+ExpandConstant('{tmp}\vid_instdir.avi')+' alias sdVideo parent '+IntToStr(vPanel2.Handle)+' style child','',0,0); mciSendString('put sdVideo window at 0 0 704 272','',0,0); end; BkgImg2:=ImgLoad(WizardForm.Handle,ExpandConstant('{tmp}\pbbkg.png'),28,347,0,0,False,True); AppLabel2:=TLabel.Create(WizardForm); with AppLabel2 do begin Parent:=WizardForm; Transparent:=True; Caption:=WizardForm.DirEdit.Text; with Font do begin Name:=FontName; Size:=11; Color:=clBlack; end; Left:=59; Top:=364; end; AppLabel:=TLabel.Create(WizardForm); with AppLabel do begin Parent:=WizardForm; Transparent:=True; Caption:=WizardForm.DirEdit.Text; with Font do begin Name:=FontName; Size:=11; Color:=$e5e5e5; end; Left:=57; Top:=362; end; А вот как сделать подобное для окна выбора компонентов? |
|
Последний раз редактировалось Mat_y, 20-07-2013 в 23:58. Отправлено: 23:44, 20-07-2013 | #828 |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Цитата saurn:
Цитата saurn:
|
||
------- Отправлено: 00:01, 21-07-2013 | #829 |
Ветеран Сообщения: 649
|
Профиль | Отправить PM | Цитировать Mat_y, В данном скрипте окна "создаются" процедурами. Дело в том, что стандартный TNoteBook - древний предок TPageControl здесь скрыт, и есть только сама форма TWizardForm и в педелах клиентской области в зависимости от индекса текущей страницы становятся видимыми/невидимыми соответствующие элементы интефейса. Всё это наглядно видно в procedure CurPageChanged(CurPageID: Integer);
основного скрипта. Для того чтобы добавить ещё одну страницу между стр. выбора директории и стр. установки необходимо удалить директиву DisableReadyPage=yes из раздела [Setup]. Список страниц такой: Те страница номер 10 то что нужну Далее в procedure CurPageChanged(CurPageID: Integer); добавим следующее (красным выделил имплиментацию новой страницы) Надеюсь ты понимаешь весь принцип. Те для каждой страницы Действуют 3 процедуры: CreateИмяСтраницы (где-то во внешних библиотеках при инициализации) ShowИмяСтраницы HideИмяСтраницы Остаётся только описание тела процедур для твоей новой страницы, и оно такое же как и у других страниц, только с твоим содержимым на ней (видео, чекбоксы и пр.) |
Отправлено: 18:45, 21-07-2013 | #830 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 5] | El Sanchez | Автоматическая установка приложений | 1999 | 28-03-2013 19:09 | |
Скрипты Inno Setup. Помощь и советы [часть 4] | El Sanchez | Автоматическая установка приложений | 2099 | 22-05-2012 23:16 | |
Скрипты Inno Setup. Помощь и советы [часть 3] | Serega | Автоматическая установка приложений | 3755 | 26-10-2011 17:58 | |
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] | Serega | Автоматическая установка приложений | 2651 | 08-11-2010 18:34 | |
Скрипты Inno Setup Compiler | QAZAK | Автоматическая установка приложений | 7 | 15-01-2007 17:59 |
|