Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 4]

Закрытая тема
Настройки темы
Скрипты Inno Setup. Помощь и советы [часть 4]

Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1265
Благодарности: 1025


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: Vadikan
Дата: 22-05-2012
Описание: Закрыто
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
Inno Setup. Прочие вопросы.


Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
  • ISTool - неплохой редактор скриптов Inno Setup.
    Последняя версия: 5.3.0.1 [29.09.2009] - Скачать | зеркало;

  • Inno Script Generator - генератор скриптов Inno Setup. Обладает некоторыми полезными функциями, которых нет ни у самого Inno Setup, ни у ISTool.
    Последняя версия: 1.0.3.1 [23.03.2008] - Скачать | зеркало на русифицированную программу;
    Примечание: Родной сайт www.hisoft2000.de более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup Form Designer - редактор страниц Inno Setup, можно создавать свои страницы.
    Последняя версия: 2.0.8 [12.11.2006] - Скачать;
    Примечание: Родной сайт http://isfd.kaju74.de/index.php?isfd более недоступен, поэтому здесь расположены сторонние ссылки.

  • Inno Setup GameScript Generator - программа генерирует скрипты для Inno Setup . С помощью GameScript Generator и Inno Setup вы сможете быстро создать простенький инсталляционный пакет для любой игры. В инсталлятор можно встроить музыку, слайдшоу и фоновый рисунок. Для специалистов созданный скрипт, возможно, будет неплохой заготовкой для дальнейшей модернизации;

  • ISSkin - Программа для создания и добавления в инсталлятор скинов. Инструкция.
    Последняя версия: 3.0.0.0 [19.01.2010] - Скачать;

  • ISSJoiner - Программа для объединения нескольких скриптов InnoSetup в один.
    Последняя версия: 3.0 [23.07.2009]

  • Converter - Программа конвертирует reg-файлы в формат *.iss (формат скриптов Inno Setup).
    Последняя версия: 0.1.4 [13.03.2010] - Скачать;


Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:
Inno Setup [все вопросы] часть 1
Inno Setup [все вопросы] часть 2
Скрипты Inno Setup. Помощь и советы [часть 3]


Продолжение обсуждения
Скрипты Inno Setup. Помощь и советы [часть 5]

Отправлено: 18:01, 29-08-2011

 

Аватара для Raf-9600

Старожил


Сообщения: 398
Благодарности: 21

Профиль | Отправить PM | Цитировать


Johny777, Это не подойдет. Но все равно спасибо за помощь

Отправлено: 16:43, 04-04-2012 | #1401



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для El Sanchez

Ветеран


Contributor


Сообщения: 1265
Благодарности: 1025

Профиль | Отправить PM | Цитировать


Цитата Johny777:
вроде полностью будет так:
читать дальше »
а чему равны?
GWL_EXSTYLE = ?;
WS_EX_COMPOSITED = ?; »
Johny777, ну, почти угадал.
Код: Выделить весь код
const
  GWL_EXSTYLE = (-20)
  WS_EX_COMPOSITED = $2000000
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:50, 04-04-2012 | #1402


Забанен


Сообщения: 216
Благодарности: 62

Профиль | Цитировать


Как добавить ключ реестра?
Не каким образом не добавляет, по разному пробовал:
читать дальше »
Код: Выделить весь код
[Registry]
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{D1514D66-7796-4DAB-BF64-9B54924EA9F7}_is1; ValueType: dword; ValueName: IsAppInstalled; ValueData: $00000001
Код: Выделить весь код
[Registry]
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{#AppID}_is1; ValueType: dword; ValueName: IsAppInstalled; ValueData: $00000001
Код: Выделить весь код
[Registry]
Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{{#AppID}; ValueType: dword; ValueName: IsAppInstalled; ValueData: $00000001


.

Последний раз редактировалось Devils Night, 05-04-2012 в 02:43.


Отправлено: 23:09, 04-04-2012 | #1403


Аватара для R.i.m.s.k.y.

Ветеран


Сообщения: 1640
Благодарности: 536

Профиль | Отправить PM | Цитировать


Devils Night, в секцию Uninstall реестра во время установки доступа нет, туда можно сунуться во время InitializeSetup или после [Run]

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!

Это сообщение посчитали полезным следующие участники:

Отправлено: 23:53, 04-04-2012 | #1404


Забанен


Сообщения: 216
Благодарности: 62

Профиль | Цитировать


Цитата R.i.m.s.k.y.:
в секцию Uninstall реестра во время установки доступа нет, туда можно сунуться во время InitializeSetup или после [Run] »
Понял, значит придётся использовать секцию RUN.

Ребят, подскажите такую вещь, как по средствам INNO По VID & PID сделать так чтобы определялось устройство и высвечивалось в инсталяторе?

Отправлено: 15:57, 05-04-2012 | #1405


Аватара для Ivan_009

Ветеран


Сообщения: 608
Благодарности: 58

Профиль | Цитировать


Как у новой bass.dll v2.4.8 создать кнопку вкл выкл музыки...

Отправлено: 16:04, 05-04-2012 | #1406


Аватара для R.i.m.s.k.y.

Ветеран


Сообщения: 1640
Благодарности: 536

Профиль | Отправить PM | Цитировать


Devils Night, если мне нужны названия и пиды/виды - я из реестра дергаю, в шапке есть ultimate Black Skin, он выдергивает названия, ис тех же ключей реестра можно дернуть и пиды

в общем за основу возьми из шапки скрипт "проверку системных требований"
вот так я дергаю для видюшки пид/вид, на выходе список видюшек с пидами/видами, каждая видюшка на новой строчке
Код: Выделить весь код
function GetAllVideoCard():String; // HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}
var
  Keys : TArrayOfString;
  key, DriverDesc, MatchingDeviceId : string;
  i : integer;
begin
  Result := '';
  key := 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}'; RegGetSubkeyNames(HKLM, key, Keys)
  for i := 0 to GetArrayLength(Keys)-1 do begin
    RegQueryStringValue(HKLM, key + '\' + Keys[i], 'DriverDesc', DriverDesc);
    RegQueryStringValue(HKLM, key + '\' + Keys[i], 'MatchingDeviceId', MatchingDeviceId); StringChangeEx(MatchingDeviceId, 'pci\', '', True);
    if (Pos(LowerCase(DriverDesc), LowerCase(Result)) = 0) then Result := Result + #13#10 + DriverDesc + ' (' + MatchingDeviceId + ')';
  end;
end;
заодно GUID устройств http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx

-------
Хороший установщик тот, которого не замечаешь
Оформление в инно пустая трата времени: толку мало, головняка много, а ошибок истчо больше!


Последний раз редактировалось R.i.m.s.k.y., 05-04-2012 в 16:41.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:06, 05-04-2012 | #1407


Аватара для Johny777

Ветеран


Сообщения: 649
Благодарности: 444

Профиль | Отправить PM | Цитировать


подскажите пожалуйста
как убрать кнопку системного меню в середине?

(правый фрвгмент скрина из готового инсталла на основе Inno, а не фотошоп)
за эти кнопки отвечает
WizardForm.BorderIcons := [biSystemMenu];
вот так не убирается
Procedure InitializeWizard();
begin
WizardForm.BorderIcons :=WizardForm.BorderIcons - [biMaximize];
end;

Последний раз редактировалось Johny777, 05-04-2012 в 18:46.


Отправлено: 16:28, 05-04-2012 | #1408


Забанен


Сообщения: 216
Благодарности: 62

Профиль | Цитировать


Цитата R.i.m.s.k.y.:
если мне нужны названия и пиды/виды - я из реестра дергаю »
Да вот рыскаю реестр, ищу.

Цитата R.i.m.s.k.y.:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} »
Ага, спасибо большое.
А вот когда устройство есть но не установлены драйвера, оно определяется в Class\{4D36E968-E325-11CE-BFC1-08002BE10318} или HARDWARE?

Цитата R.i.m.s.k.y.:
в шапке есть ultimate Black Skin »
читать дальше »
Я можно сказать весь этот код закоментировал, и в итоге он вообще перестал работать, хотел чтоб осталось одно устройство, например:
Код: Выделить весь код
Видеоадаптер:  NVIDIA GeForce 8600
, но без оформления рамками, в общем не получается. Если можно кодик одного устройства (без всяких там виндовсов, файлов подкачек), пожалуста?!


читать дальше »
Цитата R.i.m.s.k.y.:
Код: Выделить весь код
function GetAllVideoCard():String; // HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}
var
  Keys : TArrayOfString;
  key, DriverDesc, MatchingDeviceId : string;
  i : integer;
begin
  Result := '';
  key := 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}'; RegGetSubkeyNames(HKLM, key, Keys)
  for i := 0 to GetArrayLength(Keys)-1 do begin
    RegQueryStringValue(HKLM, key + '\' + Keys[i], 'DriverDesc', DriverDesc);
    RegQueryStringValue(HKLM, key + '\' + Keys[i], 'MatchingDeviceId', MatchingDeviceId); StringChangeEx(MatchingDeviceId, 'pci\', '', True);
    if (Pos(LowerCase(DriverDesc), LowerCase(Result)) = 0) then Result := Result + #13#10 + DriverDesc + ' (' + MatchingDeviceId + ')';
  end;
end;
»
Ну вот вставил:
Код: Выделить весь код
[Code ]
function GetAllVideoCard():String; // HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}
var
  Keys : TArrayOfString;
  key, DriverDesc, MatchingDeviceId : string;
  i : integer;
begin
  Result := '';
  key := 'SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}'; RegGetSubkeyNames(HKLM, key, Keys)
  for i := 0 to GetArrayLength(Keys)-1 do begin
    RegQueryStringValue(HKLM, key + '\' + Keys[i], 'DriverDesc', DriverDesc);
    RegQueryStringValue(HKLM, key + '\' + Keys[i], 'MatchingDeviceId', MatchingDeviceId); StringChangeEx(MatchingDeviceId, 'pci\', '', True);
    if (Pos(LowerCase(DriverDesc), LowerCase(Result)) = 0) then Result := Result + #13#10 + DriverDesc + ' (' + MatchingDeviceId + ')';
  end;
end;

А как сделать чтоб оно в инсаляторе где нибудь внизу выдало например Видеоадаптер: Такой то, такой то. Естественно без оформления и рамок.

Последний раз редактировалось Devils Night, 05-04-2012 в 17:24.


Отправлено: 16:58, 05-04-2012 | #1409


Аватара для Raf-9600

Старожил


Сообщения: 398
Благодарности: 21

Профиль | Отправить PM | Цитировать


В Inno Setup от Restools есть замечательная возможность сворачивать компоненты (ComponentsListTVStyle=true), а возможно ли сделать так, чтобы при выборе какого-то компонента, сворачивалась определённое древо компонентов?

Допустим у меня есть:
Код: Выделить весь код
[Components]
Name: "Game1"; Description: Игра 1; 
Name: "Game1\One"; Description: Пункт 1; 
Name: "Game1\Two"; Description: Пункт 2; 
Name: "Game2"; Description: Игра 2;
Name: "Game2\One"; Description: Пункт 1; 
Name: "Game2\Two"; Description: Пункт 2;
Нужно чтобы при выборе Game2 сворачивалось древо компонентов Game1, и наоборот. Такое реально?

Последний раз редактировалось Raf-9600, 05-04-2012 в 18:02.


Отправлено: 17:57, 05-04-2012 | #1410



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 4]

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Test ferget Тест-форум 0 24-08-2011 01:25
test ! ! Aaa ! ! Тест-форум 0 23-04-2011 11:29
test Santa aka Snt Тест-форум 0 16-04-2011 22:35
test xolod. Программное обеспечение Linux и FreeBSD 0 19-04-2009 21:03
Test memory KEugeNik Хочу все знать 11 23-11-2003 23:11




 
Переход