Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 6]
Optitron
05-01-2014, 11:25
Всем Привет. Кто знает, как убрать в странице компонентов линии и сделать один единый цвет после этого (белый цвет в серый).
а сам инстоллятор возможно сделать: чтобы запускался от имени администратора ? или нет ? »А разве он не из под администратора по умолчанию запускается?
По умолчанию там и так привилегии выставлены PrivilegesRequired=admin.
Не, если конечно не веришь, то можешь для убедительности в секции [Setup] выставить:
[Setup]
PrivilegesRequired=admin
для PrivilegesRequired возможные значения: none, poweruser, admin, или lowest
Ну, блин, не позорились что-ли - самое простое и не могут разобраться. Я к тому, что полезно справку почитать.
Скачай справку (http://rghost.ru/users/Arsen19/releases/Russkaya-spravka-k-Inno-Setup), да почитай про привилегии: ISetup.chm » Секция скриптов » Директивы секций » PrivilegesRequired.
и совместимость с WINXPSP3 - мне нужно только для тех у кого Windows 7/8 »
так:
[Registry]
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\Tront.exe; ValueData: WINXPSP3 RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 0,6.0
Nordek,
Во спасибо!
1. нет по умолчанию я проверил созданный файл - привилегия сняты в свойствах. - сейчас проверю.
2. [Registry]
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\Tront.exe; ValueData: WINXPSP3 RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 0,6.0Ага и с этим спасибо, но тут можно маленько разъяснить - вижу вы добавили в конце только MinVersion: 0,6.0 - что это значит ? - или дайте ссылку на подобный гайд, тк я наверно уеж вас замучал, но просто охота для игроков сделать удобнее все..
Добавлено:
выставил как вы и сказали:
PrivilegesRequired=admin
файл создался после генерации инсталятора и в свойствах все равно нету галочки - запускать от имени администратора.
и скачал вашу справку - пытаюсь открыть все нормально открывается но куда бы я не кликал с права не появляется описание, всегда пустое окно..
Кто знает, как убрать в странице компонентов линии и сделать один единый цвет после этого (белый цвет в серый). »Вот так :):
[Code]
procedure InitializeWizard();
begin
WizardForm.Bevel.Visible := False;
WizardForm.Bevel1.Visible := False;
WizardForm.WelcomePage.Color := clBtnFace;
WizardForm.WelcomeLabel2.Color := clBtnFace;
WizardForm.LicenseMemo.Color := clBtnFace;
WizardForm.PasswordEdit.Color := clBtnFace;
WizardForm.InfoBeforeMemo.Color := clBtnFace;
WizardForm.UserInfoSerialEdit.Color := clBtnFace;
WizardForm.UserInfoOrgEdit.Color := clBtnFace;
WizardForm.UserInfoNameEdit.Color := clBtnFace;
WizardForm.DirEdit.Color := clBtnFace;
WizardForm.ComponentsList.Color := clBtnFace;
WizardForm.TypesCombo.Color := clBtnFace;
WizardForm.GroupEdit.Color := clBtnFace;
WizardForm.InfoAfterMemo.Color := clBtnFace;
WizardForm.MainPanel.Color := clBtnFace;
WizardForm.FinishedPage.Color := clBtnFace;
end;
файл создался после генерации инсталятора и в свойствах все равно нету галочки »Да там и так не должно никаких галочек стоять т.к самому установщику назначены административные права и всё что он делает, он делает из под администратора.
Иначе, установка в папку не была удачно произведена т.к при установке выбивало ошибку типа: "Нет прав доступа".
что это значит ? »
MinVersion
Минимальная версия Windows и Windows NT, необходимая для установки параметра. Если значение равно "0", значит на платформе Windows (если первое) или Windows NT (если на втором месте) параметр будет не действительным. Номера сборки и/или пакета обновления могут включаться в значение. Значение перекрывается значением директивы MinVersion, которая указана в секции [Setup].
Параметр, для которого не указана MinVersion, устанавливается всегда, если только другой параметр этого не запретит.
Например:
MinVersion: 4.0,4.0
MinVersion: 4.1
OnlyBelowVersion
Параметр, обратный MinVersion. Указывает максимальную версию Windows и Windows NT для записи которая не будет обработана. Например, если Вы ввели 4.1,5.0 и система Windows 95 или NT 4.0, то параметр будет действительным, но если система Windows 98 (4.1) или Windows 2000 (NT 5.0), параметр будет недействительным. Если значение равно "0", значит, параметр будет действителен на любой платформе Windows. Номера сборки и/или пакета обновления могут включаться в значение. Значение перекрывается значением директивы OnlyBelowVersion, которая указана в секции [Setup].
Параметр, для которого не указан OnlyBelowVersion, устанавливается всегда, если только другой параметр этого не запретит.
Например:
OnlyBelowVersion: 4.1,5.0
Nordek,
Ну все спасибо большое:
выставил вот так:
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\Tront.exe; ValueData: RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\Tront.exe; ValueData: WINXPSP3 RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 0,6.0
первое: мы делаем для всех совместимость с RUNASADMIN
второе: мы делаем для Win 7 и Win 8 совместимость с WINXPSP3 и RUNASADMIN
получается все правильно ? или лучше в первом указать что все которые ниже Win 7 , а то получается мы делаем два параметра RUNASADMIN на win 7+..
или лучше в первом указать что все которые »Ну, первой можешь назначить MinVersion и OnlyBelowVersion
; MinVersion: 4.0,; OnlyBelowVersion: 0,6.0 т.е начиная от Windows 95 и заканчивая Windows Vista, на Vista уже не сработает/не внесётся параметр в реестр.
далее у тебя идёт второй параметр MinVersion: 0,6.0 что значит сработает начиная от Windows Vista и выше, но не будет работать на ранних версиях - т.е на XP уже не сработает/не внесётся параметр в реестр.
[Registry]
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\Tront.exe; ValueData: RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 4.0,; OnlyBelowVersion: 0,6.0
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\Tront.exe; ValueData: WINXPSP3 RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 0,6.0
Nordek, Блин чел, Вы такой умный - спасибо =)
все скопировал что вы мне дали, буду тестировать, как я понял с этими параметрами в реестр, уже не надо ничего добавлять в секцию: [Setup] ?
а то вы выше писали что возможно туда придется добавлять..
Добавлено:
выдало ошибки при компиляции на MinVersion: 4.0,;
Вы видать забыли 0 дописать, типо
MinVersion: 4.0,0; ? - или просто запятая лишняя..
Добавлено:
Попытался на "Windows 2003 Server" проверить совместимость - почему то не выставило, видать NT уже идет ?
Весь список MinVersion для справки:
MinVersion: 4.0, - Windows 95
MinVersion: 4.1, - Windows 98
MinVersion: 4.9, - Windows ME
MinVersion: 0,4.0 - Windows NT 4.0
MinVersion: 0,4.0sp1 - Windows NT 4.0 Service Pack 1
MinVersion: 0,4.0sp2 - Windows NT 4.0 Service Pack 2
MinVersion: 0,4.0sp3 - Windows NT 4.0 Service Pack 3
MinVersion: 0,4.0sp4 - Windows NT 4.0 Service Pack 4
MinVersion: 0,4.0sp5 - Windows NT 4.0 Service Pack 5
MinVersion: 0,4.0sp6 - Windows NT 4.0 Service Pack 6
MinVersion: 0,5.0 - Windows 2000
MinVersion: 0,5.0sp1 - Windows 2000 Service Pack 1
MinVersion: 0,5.0sp2 - Windows 2000 Service Pack 2
MinVersion: 0,5.0sp3 - Windows 2000 Service Pack 3
MinVersion: 0,5.0sp4 - Windows 2000 Service Pack 4
MinVersion: 0,5.01 - Windows XP/Windows XP 64-Bit Edition Version 2002 (Itanium)
MinVersion: 0,5.01sp1 - Windows XP Service Pack 1
MinVersion: 0,5.01sp2 - Windows XP Service Pack 2
MinVersion: 0,5.01sp3 - Windows XP Service Pack 3
MinVersion: 0,5.02 - Windows XP x64 Edition (AMD/EM64T)
MinVersion: 0,5.01 - Windows XP 64-Bit Edition Version 2002 (Itanium)
MinVersion: 0,5.02 - Windows XP 64-Bit Edition Version 2003 (Itanium)
MinVersion: 0,6.0 - Windows Vista
MinVersion: 0,6.0sp1 - Windows Vista Service Pack 1
MinVersion: 0,6.0sp2 - Windows Vista Service Pack 2
MinVersion: 0,6.1 - Windows 7
MinVersion: 0,6.1sp1 - Windows 7 Service Pack 1
MinVersion: 0,5.02 - Windows Server 2003
MinVersion: 0,5.02sp1 - Windows Server 2003 Service Pack 1
MinVersion: 0,5.02sp2 - Windows Server 2003 Service Pack 2
MinVersion: 0,5.02 - Windows Server 2003 R2
MinVersion: 0,6.0 - Windows Server 2008
MinVersion: 0,6.1 - Windows Server 2008 R2
MinVersion: 0,6.2 - Windows 8
MinVersion: 0,6.3 - Windows 8.1
Примечание:
В списке могут попадаться одинаковые значения например: для Windows Vista: MinVersion: 0,6.0 и для Windows Server 2008: MinVersion: 0,6.0 - это не опечатка, просто MinVersion: 0,6.0 идёт как для Windows Vista так и Windows Server 2008.
По этому, достаточно указать один раз MinVersion: 0,6.0 - она сработает как для Windows Vista так и Windows Server 2008.
понял делаю вот так:
[Registry]
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\Tront.exe; ValueData: RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 5.1,0; OnlyBelowVersion: 0,6.3
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\Tront.exe; ValueData: WINXPSP3 RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 0,6.3
первое все в том числе и WinXP и 2003
второе все что выше Vista в том числе и 2008
Optitron
05-01-2014, 19:27
Nordek, Благодарю, а как убрать линии не знаете?
а как убрать линии »Какие? На скрине не понятно.
WizardForm.ComponentsList.BorderStyle := bsNone;
Это или опять не то?
Nordek, ладно что-то не работает на 2003 все-равно, если убрать вообще минверсия - тогда работает, а с ней нет, скорей всего тогда вас не буду мучат - придется глобально почитать описание =(
выдало ошибки при компиляции на MinVersion: 4.0,; »Так у тебя наверно стандартная версия. Используй расширенную версию (http://forum.oszone.net/post-2267176-1603.html) INNO.
Nordek, то есть это не ошибка что просто написано 4.0, - с запятой ?
то есть это не ошибка что просто написано 4.0, - с запятой ? »Нет, не ошибка. У меня на расширенной версии компилится нормально. Если б не работала, я бы не выкладывал.
Вот тестовый скрипт:
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
OutputDir=.
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Icons]
Name: {commondesktop}\My Program; Filename: {app}\MyProg.exe
Name: {commondesktop}\{cm:UninstallProgram,My Program}; Filename: {uninstallexe}
Name: {group}\My Program; Filename: {app}\MyProg.exe
Name: {group}\{cm:UninstallProgram,My Program}; Filename: {uninstallexe}
[Files]
Source: compiler:Examples\MyProg.exe; DestDir: {app}; Flags: ignoreversion
[Registry]
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\MyProg.exe; ValueData: RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 4.0,; OnlyBelowVersion: 0,6.0
Root: HKCU; SubKey: Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\MyProg.exe; ValueData: WINXPSP3 RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty; MinVersion: 0,6.0
Nightwishh
06-01-2014, 04:06
Я дико извеняюсь, хочу спросить как запустить .msi контейнер в процедуре procedure CurStepChanged(CurStep: TSetupStep)
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssPostInstall then begin
Exec(ExpandConstant('{src}\Soft\PhysX-9.13.0725-SystemSoftware.msi'), 'msiexec /i', ExpandConstant('{src}\Soft'), SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
end; неработает!!!
как запустить .msi »
[CustomMessages]
PhysXInstall=Установка PhysX
[Code]
var
ResultCode: integer;
procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssPostInstall then begin
WizardForm.FilenameLabel.Caption:=ExpandConstant('{cm:PhysXInstall}');
ShellExec('', ExpandConstant('{src}\Soft\PhysX-9.13.0725-SystemSoftware.msi'),'/qn', '', SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
end;
Nightwishh
06-01-2014, 20:25
http://forum.oszone.net/attachment.php?attachmentid=108716&stc=1&d=1388942447 Такое окошко выскакивает после установки (невсегда, очень редко). Что это может озночать?
habib2302
07-01-2014, 19:34
доброе время суток.помогите мне решить ошибку
http://i.imgur.com/rWEhwUu.jpg (http://i.imgur.com/GY04SrN.jpg)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.