![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 8] |
|
Скрипты Inno Setup. Помощь и советы [часть 8]
|
Ветеран Сообщения: 1274 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Скрипты Inno Setup. Помощь и советы (Archive Pack 1):
Скрипты Inno Setup. Помощь и советы [часть 6] Скрипты Inno Setup. Помощь и советы [часть 7] |
|
Отправлено: 08:52, 02-02-2015 |
![]() Ветеран Сообщения: 863
|
Профиль | Отправить PM | Цитировать Цитата Николай_Николаич@vk:
Скрытый текст
[setup] appname=app appvername=1.0 app defaultdirname={code:GetDir} [Code] function GetDir(S: string): string; var d,r: string; begin S := ExpandConstant('{pf}\app'); if RegKeyExists(HKLM, 'Software\1') then begin if RegQueryStringValue(HKLM, 'Software\1', 'Dir', d) then S := d; end; if RegKeyExists(HKLM, 'Software\2') then begin if RegQueryStringValue(HKLM, 'Software\2', 'Dir', r) then S := r; end; if RegValueExists(HKLM, 'Software\1', 'Dir') and RegValueExists(HKLM, 'Software\2', 'Dir') then s := r; Result := S; end; |
|
------- Отправлено: 09:42, 17-05-2015 | #621 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 47
|
Профиль | Отправить PM | Цитировать Доброго времени суток!
Помогите пожалуйста сделать панельку (не логотип), как на втором скрине: Скрины
![]() ![]() Панель представлена в виде PNG-картинки. Открывается с нажатием на кнопку. В активном режиме панели деактивируются CancelButton и NextButton. MusicButton и VolPB не интересуют. |
Отправлено: 11:30, 18-05-2015 | #622 |
Новый участник Сообщения: 17
|
Профиль | Сайт | Отправить PM | Цитировать Здравствуйте.
Подскажите, как такое реализовать. Путь установки C:\Prog в папке Prog есть папка Prog1 И в этой папке куча папок. Так вот, как сделать чтобы один файл file.hof раскидать по папкам которые находятся в папке Prog1 |
Отправлено: 22:43, 18-05-2015 | #623 |
Новый участник Сообщения: 20
|
Профиль | Отправить PM | Цитировать Цитата Николай_Николаич@vk:
|
|
Отправлено: 04:57, 20-05-2015 | #624 |
Старожил Сообщения: 212
|
Профиль | Отправить PM | Цитировать ekspoint, для индусов такой вариант в самый раз подходит (это я про тот случай, если вложенных папок, например, 30). И не факт, что имеющиеся папки имеют не уникальные имена.
Цитата Николай_Николаич@vk:
var TFR: TFindRec; begin if FindFirst(ExpandConstant('{app}\Prog\Prog1\') + '*', TFR) then try repeat if (TFR.Name <> '.') and (TFR.Name <> '..') then if TFR.Attributes and FILE_ATTRIBUTE_DIRECTORY > 0 then FileCopy(ExpandConstant('{app}\file.hof'), ExpandConstant('{app}\Prog\Prog1\') + TFR.Name + '\file.hof', False); until not FindNext(TFR); finally FindClose(TFR); end; end; |
|
------- Последний раз редактировалось kotyarko@fb, 20-05-2015 в 21:33. Отправлено: 21:12, 20-05-2015 | #625 |
![]() Ветеран Сообщения: 863
|
Профиль | Отправить PM | Цитировать Цитата Николай_Николаич@vk:
Скрытый текст
[setup] appname=test appvername=test 1.0 defaultdirname={sd}\test [files] source: file.hof; destdir: {app}; [dirs] name: {app}\Prog\Prog1\1; name: {app}\Prog\Prog1\2g; name: {app}\Prog\Prog1\3k; name: {app}\Prog\Prog1\4i; [code] procedure SendFileToSubFolders; var TFR: TFindRec; begin if FindFirst(ExpandConstant('{app}\Prog\Prog1\') + '*', TFR) then try repeat if (TFR.Name <> '.') and (TFR.Name <> '..') then if TFR.Attributes and FILE_ATTRIBUTE_DIRECTORY > 0 then FileCopy(ExpandConstant('{app}\file.hof'), ExpandConstant('{app}\Prog\Prog1\') + TFR.Name + '\file.hof', False); until not FindNext(TFR); finally FindClose(TFR); end; end; procedure CurStepChanged(CurStep: TSetupStep); begin if CurStep = ssPostInstall then SendFileToSubFolders; end; |
|
------- Отправлено: 00:11, 21-05-2015 | #626 |
Новый участник Сообщения: 17
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Dodakaedr:
|
|
Отправлено: 00:28, 23-05-2015 | #627 |
Старожил Сообщения: 212
|
Профиль | Отправить PM | Цитировать Цитата Николай_Николаич@vk:
|
|
------- Отправлено: 01:16, 23-05-2015 | #628 |
Новый участник Сообщения: 17
|
Профиль | Сайт | Отправить PM | Цитировать Цитата kotyarko@fb:
а то кроме как просто копировать, ничего не получается. |
|
Отправлено: 02:13, 23-05-2015 | #629 |
Старожил Сообщения: 212
|
Профиль | Отправить PM | Цитировать Цитата Николай_Николаич@vk:
#include "SHFileOperation.iss" ..... var TFR: TFindRec; begin if FindFirst(ExpandConstant('{app}\Prog\Prog1\') + '*', TFR) then try repeat if (TFR.Name <> '.') and (TFR.Name <> '..') then if TFR.Attributes and FILE_ATTRIBUTE_DIRECTORY > 0 then CopyDir(ExpandConstant('{app}\Folder'), ExpandConstant('{app}\Prog\Prog1\') + TFR.Name); until not FindNext(TFR); finally FindClose(TFR); end; end; |
|
------- Отправлено: 02:21, 23-05-2015 | #630 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 7] | El Sanchez | Автоматическая установка приложений | 2499 | 02-02-2015 08:59 | |
Скрипты Inno Setup. Помощь и советы [часть 6] | El Sanchez | Автоматическая установка приложений | 2494 | 10-03-2014 11:51 | |
Скрипты 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 |
|