|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » [архив] Скрипты Inno Setup. Помощь и советы [часть 2] |
|
[архив] Скрипты Inno Setup. Помощь и советы [часть 2]
|
Ветеран Сообщения: 1133 |
Лимит страниц.
Тема закрыта. Продолжение по ссылке Скрипты Inno Setup. Помощь и советы [часть 3] Внимание! Данная тема предназначена только для обсуждения написания скриптов ! Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Ссылка на архив предыдущей темы (также можно скачать из вложения) |
|
------- Отправлено: 22:06, 23-08-2009 |
Пользователь Сообщения: 65
|
Профиль | Отправить PM | Цитировать Cartmans,
Цитата Cartmans:
Цитата Cartmans:
|
||
Отправлено: 08:07, 02-03-2010 | #1391 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 29
|
Профиль | Отправить PM | Цитировать Цитата solvador:
хоть инно и определяет set как служебное слово, но свое множество я так и не смог определить тоже самое в отношении in |
|
Отправлено: 11:01, 02-03-2010 | #1392 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать South, такая же беда.
Написал такой код: procedure DBBackup(); var C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z: String; begin CreateBackup; {вызов процедуры создания резервных копий} C:= 'c'; D:= 'd'; E:= 'e'; F:= 'f'; G:= 'g'; H:= 'h'; I:= 'i'; J:= 'j'; K:= 'k'; L:= 'l'; M:= 'm'; N:= 'n'; O:= 'j'; P:= 'p'; Q:= 'q'; R:= 'r'; S:= 's'; T:= 't'; U:= 'u'; V:= 'v'; W:= 'w'; X:= 'x'; Y:= 'y'; Z:= 'z'; if FindFirst(ExpandConstant('{app}\gamedata.db*'), FindFiles) then {ищем по маске файлы в директории} begin repeat Delete(FindFiles.Name, 1, 11); {режем строку до одной последней буквы} case FindFiles.Name of {сравнение и результат} C: CreateDBBackup; D: CreateDBBackup; E: CreateDBBackup; F: CreateDBBackup; G: CreateDBBackup; H: CreateDBBackup; I: CreateDBBackup; J: CreateDBBackup; K: CreateDBBackup; L: CreateDBBackup; M: CreateDBBackup; N: CreateDBBackup; O: CreateDBBackup; P: CreateDBBackup; Q: CreateDBBackup; R: CreateDBBackup; S: CreateDBBackup; T: CreateDBBackup; U: CreateDBBackup; V: CreateDBBackup; W: CreateDBBackup; X: CreateDBBackup; Y: CreateDBBackup; Z: CreateDBBackup; // else MsgBox(FindFiles.Name, mbCriticalError, mb_OK); {выводим имя пропущенного файла для проверки} end; until not FindNext(FindFiles); FindClose(FindFiles); end; end; По крайней мере для реализации её таким способом ![]() |
Последний раз редактировалось solvador, 02-03-2010 в 13:13. Отправлено: 13:00, 02-03-2010 | #1393 |
Новый участник Сообщения: 29
|
Профиль | Отправить PM | Цитировать Цитата solvador:
procedure DBBackup(); var // C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z: String; FindFiles : TFindRec; LastChar : Char; begin CreateBackup; {вызов процедуры создания резервных копий} //C:= 'c'; D:= 'd'; E:= 'e'; F:= 'f'; G:= 'g'; H:= 'h'; I:= 'i'; J:= 'j'; K:= 'k'; L:= 'l'; M:= 'm'; N:= 'n'; O:= 'j'; P:= 'p'; Q:= 'q'; R:= 'r'; S:= 's'; T:= 't'; U:= 'u'; V:= 'v'; W:= 'w'; X:= 'x'; Y:= 'y'; Z:= 'z'; if FindFirst(ExpandConstant('{app}\gamedata.db*'), FindFiles) then begin {ищем по маске файлы в директории} repeat // Delete(FindFiles.Name, 1, 11); {режем строку до одной последней буквы} LastChar:=UpperCase(FindFiles.Name)[Length(FindFiles.Name)]; if (LastChar<>'A') and (LastChar<>'B') then CreateDBBackup; // case FindFiles.Name of {сравнение и результат} // C: CreateDBBackup; D: CreateDBBackup; E: CreateDBBackup; F: CreateDBBackup; G: CreateDBBackup; H: CreateDBBackup; // I: CreateDBBackup; J: CreateDBBackup; K: CreateDBBackup; L: CreateDBBackup; M: CreateDBBackup; N: CreateDBBackup; // O: CreateDBBackup; P: CreateDBBackup; Q: CreateDBBackup; R: CreateDBBackup; S: CreateDBBackup; T: CreateDBBackup; // U: CreateDBBackup; V: CreateDBBackup; W: CreateDBBackup; X: CreateDBBackup; Y: CreateDBBackup; Z: CreateDBBackup; //else MsgBox(FindFiles.Name, mbCriticalError, mb_OK); {выводим имя пропущенного файла для проверки} // end; until not FindNext(FindFiles); FindClose(FindFiles); end; end; |
|
Отправлено: 13:42, 02-03-2010 | #1394 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать South, ну разумеется проще
![]() Я же говорю, что ни капли не программист. Хотя и LastChar (хотел сказать аналогичный пример) всё время был на виду пока листал руководства, но использовать его ума не хватило ![]() Спасибо! Правда там есть архивы заканчивающиеся на 1...9. Но думаю это решается быстро. Хм... посмотрел статьи Ерёмина, где как мне казалось видел аналогичный пример. Там такого нет, видимо ошибся... |
Последний раз редактировалось solvador, 02-03-2010 в 14:27. Отправлено: 14:06, 02-03-2010 | #1395 |
Новый участник Сообщения: 29
|
Профиль | Отправить PM | Цитировать кое-что смог сделать со множествами, оказывается они все-таки есть, только вот работать с ними как-то не очень удобно
var c:Char; b:byte; MySet1: set of char; MySet2: set of byte; begin MySet1:=['a','b','x','y']; MySet2:=[byte(1),byte(2),byte(3),byte(4),byte(5),byte(6),byte(7),byte(8),byte(9)]; c:='a'; if c in MySet1 then MsgBox('c in MySet1; c = '+c, mbCriticalError, mb_OK); b:=0; if b in MySet2 then MsgBox('b in MySet2; b = '+IntToStr(b), mbCriticalError, mb_OK); end; |
Отправлено: 14:44, 02-03-2010 | #1396 |
Старожил Сообщения: 178
|
Профиль | Отправить PM | Цитировать Inno ISCmplr Setup 5.3.8 build 100301 by Restools
|
Отправлено: 15:18, 02-03-2010 | #1397 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать South, ещё раз Спасибо. Пригодится.
Попробовал опираясь на ваш код слегка его подправить ![]() const Symbol = 'cdefghijklmnopqrstuvwxyz'; procedure DBBackup(); var FindFiles : TFindRec; begin CreateBackup; {вызов процедуры создания резервных копий} if FindFirst(ExpandConstant('{app}\gamedata.db*'), FindFiles) then begin {ищем по маске файлы в директории} repeat if Pos(FindFiles.Name[Length(FindFiles.Name)],Symbol) > 0 then CreateDBBackup; until not FindNext(FindFiles); FindClose(FindFiles); end; end; |
Отправлено: 15:21, 02-03-2010 | #1398 |
Новый участник Сообщения: 29
|
Профиль | Отправить PM | Цитировать solvador,
можно и так, только, если пишешь , то лучше написать как . вдруг расширение в верхнем регистре будет написано Цитата solvador:
|
|
Отправлено: 16:02, 02-03-2010 | #1399 |
Новый участник Сообщения: 24
|
Профиль | Отправить PM | Цитировать svensoft, мне нужен скрипт без наворотов))
|
Отправлено: 16:36, 02-03-2010 | #1400 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 3] | Serega | Автоматическая установка приложений | 3755 | 26-10-2011 17:58 | |
[архив] Inno Setup .:[все вопросы]:. | Mchik | Автоматическая установка приложений | 1329 | 23-08-2009 20:13 | |
[архив - Часть 2] AutoIt скрипты | Vadikan | AutoIt | 985 | 21-01-2008 09:58 | |
Скрипты Inno Setup Compiler | QAZAK | Автоматическая установка приложений | 7 | 15-01-2007 17:59 | |
[Архив - Часть 1.1] AutoIt скрипты | EgOrus | AutoIt | 335 | 04-02-2006 16:58 |
|