Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 4]
bugmenotagain
14-05-2012, 19:58
чекбокс как сделать который в программе русский язык выставит? (WinDjView)
Gnom_aka_Lexander
14-05-2012, 20:00
bugmenotagain, создаешь TNewCheckBox и булевую функцию, которая даст ответ в зависимости от состояния чекбокса. а проще - создай компонент или задачу - в InnoIDE - как два пальца - нужно совсем уж ленивым быть, чтоб не справиться.
bugmenotagain
14-05-2012, 20:32
по теме
как убрать #define MyAppVersion?
http://i38.fastpic.ru/thumb/2012/0514/7a/bdd0c7e0a4f3ceedda5638f4875d697a.jpeg (http://fastpic.ru/view/38/2012/0514/bdd0c7e0a4f3ceedda5638f4875d697a.png.html)
чтоб не было слова "версия"
Gnom_aka_Lexander
14-05-2012, 20:35
как убрать #define MyAppVersion? »
скрипт покажи. а то болею я , а когда болею - с телепатией сложности.
И да, про IsTool - начиная с версии Inno 5.3.9, вроде, она уже частично не соответствует сабжу, так сказать. Есть более актуальные IDE - InnoIDE от Graham Murt и Inno Script Studio от Kymoto Solutions. с русиками там тоже нет нужды помогать - Kymoto пошел навстречу и внедрил русик в дистрибутив, а Graham Murt прекратил работу над InnoIDE, что печально, конечно, но русик к последней версии так-же нет нужды по десять раз выкладывать
bugmenotagain
14-05-2012, 20:39
как убрать тире в загаловке
http://i38.fastpic.ru/thumb/2012/0514/72/1307d190d1aab75510ccfed78b89d072.jpeg (http://fastpic.ru/view/38/2012/0514/1307d190d1aab75510ccfed78b89d072.png.html)
Gnom_aka_Lexander
14-05-2012, 20:46
как убрать тире в загаловке »
отредактировать файлы сообщений.
bugmenotagain
14-05-2012, 20:48
отредактировать »
да Я бы сам догадался что надо их редактировать, где их искать, не подскажите?
Gnom_aka_Lexander
14-05-2012, 20:50
очень логично - заглядываешь в папку с инно и видишь там очень логично названную папку Languages, в ней файлы с расширением *.lng - это и есть подключаемые файлы сообщений. очень удобно редактировать их с помощью самой Inno Setup или Notepad++
bugmenotagain
14-05-2012, 20:58
http://i38.fastpic.ru/thumb/2012/0514/a2/7a6d4d99217e1f659203d00f8ab9afa2.jpeg (http://fastpic.ru/view/38/2012/0514/7a6d4d99217e1f659203d00f8ab9afa2.png.html)
как тут в названии папки убрать цифры версии? а в описании их оставить?
http://i38.fastpic.ru/thumb/2012/0514/ea/1c4b11f703e59e51d31150e907c188ea.jpeg (http://fastpic.ru/view/38/2012/0514/1c4b11f703e59e51d31150e907c188ea.png.html)
Gnom_aka_Lexander
14-05-2012, 21:02
bugmenotagain, убрать эти цифры из названия программы.
bugmenotagain
14-05-2012, 21:05
логично названную папку Languages, в ней файлы с расширением *.lng »
isl там. и будьте добры, скажите где там тире находится?
R.i.m.s.k.y.
14-05-2012, 21:07
bugmenotagain
очень логично - заглядываешь в папку с инно и видишь там очень логично названную папку Languages, в ней файлы с расширением *.lng - это и есть подключаемые файлы сообщений. очень удобно редактировать их с помощью самой Inno Setup или Notepad++ »
Это очень нехороший совет
Первая часть правильная, в файле russian.lng ищем нужный текст и подсматриваем имя переменной, а потом в инно в секции [Messages] переопределяем ее
[Messages]
BeveledLabel= SVP-Team.com (C) 2008-2012
russian.WelcomeLabel2=Программа установит [name/ver] на Ваш компьютер.%n%nРекомендуется закрыть все прочие приложения и антивирусы перед тем, как продолжить.%n%nНа версиях операционных систем, отличающихся от оригинальных образов Microsoft, работоспособность SmoothVideo Project не гарантируется.
english.WelcomeLabel2=This will install [name/ver] on your computer.%n%nPlease close all other applications and stop antivirus software before continue.
bugmenotagain
14-05-2012, 21:11
убрать эти цифры из названия программы. »
Логично. Но
вот так получается у меня
http://i36.fastpic.ru/big/2012/0514/dc/2b4a9383750d8bebcf1a126d63d416dc.png
http://i36.fastpic.ru/big/2012/0514/36/a96b38e622f5333f0019467e5e207736.png
а мне надо вот так
http://i36.fastpic.ru/big/2012/0514/97/dc168ad335a8ec3991350dc2b819dd97.png
http://i36.fastpic.ru/big/2012/0514/86/16305076df48c40dae1855a226b39c86.png
Первая часть правильная, в файле russian.lng ищем нужный текст и подсматриваем имя переменной, а потом в инно в секции [Messages] переопределяем ее »
lng не появляется. в чем проблема?
Sotonisto
14-05-2012, 21:20
Всем доброго времени суток! Использую скрипт c определением свободного/необходимого места на диске:
procedure GetFreeSpaceCaption(Sender: TObject);
var
Path: String;
begin
Path := ExtractFileDrive(WizardForm.DirEdit.Text);
GetSpaceOnDisk(Path, True, FreeMB, TotalMB);
if FreeMB > 1024 then
FreeSpaceLabel.Caption:= ExpandConstant('{cm:FreeSpace} ')+ FloatToStr(round(FreeMB/1024*100)/100) + ' Гб' else
FreeSpaceLabel.Caption:= ExpandConstant('{cm:FreeSpace} ')+ IntToStr(FreeMB)+ ' Мб';
if FreeMB < NeedSize then
WizardForm.NextButton.Enabled:= False else
WizardForm.NextButton.Enabled:= True; end;
procedure GetNeedSpaceCaptionFlashing(h: Longword; msg: Longword; idevent: Longword; dwTime: Longword);
begin
if FreeSpaceLabel.Font.Color=$FFFFFF then FreeSpaceLabel.Font.Color:=$0000FF else FreeSpaceLabel.Font.Color:=$FFFFFF;
end;
procedure GetNeedSpaceCaption;
begin
if NeedSize > 1024 then
NeedSpaceLabel.Caption:= ExpandConstant('{cm:NeedSpace} ') + FloatToStr(round(NeedSize/1024*100)/100) + ' Гб' else
NeedSpaceLabel.Caption:= ExpandConstant('{cm:NeedSpace} ') + IntToStr(NeedSize) + ' Мб';
if (FreeMB<NeedSize) then
SetTimer(WizardForm.Handle,WFDiskTimerID,1000,WrapTimerProc(@GetNeedSpaceCaptionFlashing,4));
end;
procedure CurPageChanged3(CurPageID: Integer);
begin
if CurPageID=wpSelectDir then begin
GetNeedSpaceCaption;
if FreeMB < NeedSize then
WizardForm.NextButton.Enabled:=False
end;
end;
Все работает, но не знаю что делать с этим:
http://s019.radikal.ru/i635/1205/59/747d48f1ae98.gif
Как убрать нули?
R.i.m.s.k.y.
14-05-2012, 21:20
bugmenotagain,
1. lng не появляется или нету? Учись правильно подставлять в предложения слова в соответствии со значением, принятым в данной местности
2. тебе нужен russian.ISL, ну а дальше как написано выше, ищешь свой текст и переопределяешь его в секции [Messages]
Sotonisto,
еще бы кусок кода который рисует эти нули и необходимое место, так непонятно (мне по крайней мере)
bugmenotagain
14-05-2012, 21:22
R.i.m.s.k.y., мне править где? в ing или isl ?
R.i.m.s.k.y.
14-05-2012, 21:23
bugmenotagain, перечитай еще раз что я написал
смотришь в isl и пишешь в Messages
Конкретно твой случай
[Messages]
SelectDirLabel3=...
SelectDirBrowseLabel=...
bugmenotagain
14-05-2012, 21:26
R.i.m.s.k.y., спасибо. там банально просто. тире не заметил сразу.
а что с версиями? выше картинки привел
Код:
[Messages]
SelectDirLabel3=...
SelectDirBrowseLabel=... »
ну вообще то там проще
[Messages]
; *** Application titles
SetupAppTitle=Установка
SetupWindowTitle=Установка %1
UninstallAppTitle=Деинсталляция
UninstallAppFullTitle=Деинсталляция %1
перед %1 тире было. Я удалил и теперь без тире заголовок.
R.i.m.s.k.y.
14-05-2012, 21:34
ну вообще то там проще »
если у тебя несколько инсталлеров ты под каждый проект будешь каждый раз править russian.isl?
Или еще хужей, исправишь файл, забудешь и эти исправления пойдут в следующий проект
bugmenotagain
14-05-2012, 21:45
russian.isl »
он же один
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.