rezorustavi
- Стаж: 8 лет 10 месяцев
- Сообщений: 918
- Репутация:55[+] [-]
- Откуда: Грузия, город Рустави
|
puhpol, Полезный набор софта
|
bnn17
- Стаж: 4 года 8 месяцев
- Сообщений: 41
- Репутация:0[+] [-]
|
83819bnn17, обычно такое происходит, если косяки с парами _sub Sel ... _end, т.е., имеется лишний _end или _sub. Выложи, скрипт, который глючит. Если совместить с демкой от nikzzzzCALC #i=0 CALC #NEnvi=0 FNAM TEnvi=%MyName% ENVI TEnvi=%TEnvi%.cfg IFEX %CurDir%\%TEnvi%, {* READ %CurDir%\%TEnvi%,*r,DataCFG READ -,-1,DEnvi,%DataCFG% LOOP #%NEnvi%<%DEnvi%, {* READ -,%NEnvi%,XEnvi,%DataCFG% CALC #NEnvi=%NEnvi%+1 MSTR -delims:# TEnvi=<4>%XEnvi% FIND $%TEnvi%<>, {* MSTR -delims:# Name[%i%],StartType[%i%],InstString[%i%],InstTime[%i%]=<1*>%XEnvi% CALC #i=%i%+1 } } ! EXIT //---------------------------------------------------------------- //%n% - к-во пунктов меню calc #n=%i% //Вычисляем размер окна calc w=400 calc h=int(%n%/2)*20 + 170 //Создаем основное окно @Windows %w% %h% exit _sub Windows,w%1h%2,Установка программ,, // Размер основного окна и его название. labe Label1,l10t10w%1h20,Выберите программы для установки ,,0xaaaaaa,16 // Местоположение надписи, цвет,размер шрифта. //Инфо calc l=15 calc t=int(%n%/2)*20 + 64 labe Label2,l%l%t%t%w%1h20,====== Привет ====== //Создаем в цикле Чек боксы envi i=0 loop %i%<%n%, { calc l=mod(%i%,2)*205 + 15 calc t=int(%i%/2)*20 + 40 chek Chk[%i%],l%l%t%t%w150h20,%Name[%i%]%,,1 // Чек бокс и его местоположение в окне + Имя программы calc i=%i% + 1 } //Кнопки calc l=15 calc t=int(%n%/2)*20 + 108 item Button1,l%l%t%t%w100h24,Выбрать все,Sel 1 // местоположение кнопки "выбрать все" calc l=120 item Button2,l%l%t%t%w100h24,Снять выбор,Sel 0 // местоположение кнопки "снять выбор" calc l=280 item Button3,l%l%t%t%w100h24,Установить,Install // местоположение кнопки "Установить" calc l=15 calc t=int(%n%/2)*20 + 84 pbar Pbar,l%l%t%t%w365h20,, // Прогрес бар и его место положение в окне _end _sub Sel envi i=0 loop %i%<=%n%, { envi @Chk[%i%].Check=%1 //ЭТО ЗДЕСЬ ГЛЮЧИТ, _end не заканчивает, дальше все подпрограммы не работают, если _sub Sel перенести в конец скрипта всё работает calc i=%i% + 1 } _end _sub CheckSel //Вычисляем общее время выполнения выбранных пунктов envi SummaryTime=0 envi i=0 loop %i%<=%n%, { ifex $%Chk[%i%].Check%=1,calc SummaryTime=%SummaryTime% + %InstTime[%i%]% calc i=%i% + 1 } _end _sub Install mess Установить выбранные приложения?@#YN find $%YESNO%=YES, { envi @Pbar=0 CheckSel envi CurrentTime=0 envi i=0 loop %i%<=%n%, { ifex $%Chk[%i%].Check%=1, { envi @Label2=*** Установка %Name[%i%]% *** exec %StartType[%i%]% %InstString[%i%]% calc CurrentTime=%CurrentTime% + %InstTime[%i%]% calc Percent=%CurrentTime%/%SummaryTime%*100 envi @Pbar=%Percent% envi @Chk[%i%].Check=0 } calc i=%i% + 1 } envi @Label2=*** Все задания выполнены !!! *** } _end
|
Отправлено: 09-Мар-2021 21:03
(спустя 1 час 15 минут)
bnn17
- Стаж: 4 года 8 месяцев
- Сообщений: 41
- Репутация:0[+] [-]
|
83848bnn17, Всё работает. И неважно, в каком месте _Sub Sel. У меня галочки ставятся, убираются. А программы не инсталлируются. _Sub Sel не заканчивается _end Вот картинка с notepad++
|
avalat
- Стаж: 9 лет 10 месяцев
- Сообщений: 466
- Репутация:127[+] [-]
|
bnn17, Вот мой *.cfgSumatraPDF-3.1.2#-wait#%CurDir%\prog\SumatraPDF-3.1.2.exe#1 Моя программа#-wait#%CurDir%\prog\Proga2.cmd#5 Тест#-wait#%CurDir%\prog\Proga4.cmd#7 Proga5#-wait#%CurDir%\prog\Proga5.cmd#2 Тест123456#-wait#%CurDir%\prog\Proga4.cmd#7 Prog#-wait#%CurDir%\prog\Proga5.cmd#2 установка SumatraPDF-3.1.2.exe идёт с этим скриптом --------------83857_Sub Sel не заканчивается _end Я вижу, что заканчивается... ------------- P.S. Если у тебя Notepad со встроенным PECMD (F5), - переименуй пока в pecmd.cfg. Он должен называться по имени exe-шника
|
Страница 3 из 3
Текущее время: 03-Дек 20:58
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|