Показать полную графическую версию : BS Post Installer - выбор программ перед установкой
У меня сделано следующим образом:
после установки голого Windows'a запускается .cmd файлик (взят на этом же форуме)
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do
if exist %%i:\USBDRIVE set USBDRIVE=%%i:
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"
/v PENDRIVE /d %USBDRIVE% /f
т.е. ищется носитель на котором в корне присутствует файл USBDRIVE, и этому носителю присваивается переменная %USBDRIVE%
с прописываением в регистр.
Соответственно в PRESETUP.INI первой строчкой идет
RootInstallDir=%USBDRIVE%
Boa Soft
24-06-2007, 23:50
BigMax3
Устанавливаю програмы с флэшки, на чистую систему,
старые версии работали нормально в этой заметил следующие проблемы:
Я не рассчитывал на флешки. Переделаю. Для Vista с ее способом подсовывать файл ответов на флешке будет полезно. Уже сейчас у мены на флеше файл ответов и SFX архив с драйверами и утилитами.
NikLok
Я уже предлагал автору решить эту проблему со списком типов дисков на которых осуществлять поиск, но решения не принято, так как его эта проблема не беспокоит. Может быть теперь когда версия более менее стабильная он таки пойдет дальше?!
Как -то стимула небыло. А сейчас появился. Там то всего-то надо поменять DRIVE_CDROM на DRIVE_REMOVABLE. Только тогда счет дисков надо не с A а с C начинать, чтобы дисковод не дергался, тем более, он не у всех есть.
BigMax3[
q]У меня сделано следующим образом:
после установки голого Windows'a запускается .cmd файлик (взят на этом же форуме)[/q]
Это начинает действовать только после перезагрузки. Надо еще обьяснить Windows, что Environment изменился.
Поэтому у вас и первые программы пропускаются. Ладно, поменяем в программе.
Например, так:
const
EnvKey = '\System\CurrentControlSet\Control\Session Manager\Environment\';
EnvCnName = 'Environment';
function SetSystemEnvironmentVariable (const name, value : string):boolean;
var
rv : DWORD;
begin
with TRegistry.Create do
try
RootKey := HKEY_LOCAL_MACHINE;
Result := OpenKey (EnvKey, true);
If result then begin
if value = '' then DeleteValue(name)
else WriteExpandString (name, value);
SetEnvironmentVariable(PChar(Name), PChar(Value));
SendMessageTimeout (HWND_BROADCAST, WM_SETTINGCHANGE,
0, LParam(PChar ('Environment')),
SMTO_ABORTIFHUNG, 5000, rv);
end;
finally
Free
end
end;
А если подручными средствами - найдите SETX - не помню только, откуда - толи из ресурскита толи что-то самописное.
Boa Soft
25-06-2007, 00:10
С этого дня я введу практику выкладывания в шапке архива только с одним исполняемым файлом. После того, как исправления будут обобрены и проверены - будет выкладыватся новый инсталл. А так, каждый раз перебирать дистрибутив - лениво.
Начнем:
V. 1.10.12.25
1. Исправлены утечки памяти при отображении иконки в трее (программа валилась при долгой установке).
2. Исправлены утечки памяти при загрузке иконок (заметно было только по программам контроля ресурсов - 2 обьекта GDI на каждую иконку).
3. CdTagFile теперь ищется и на флешках.
Ссылка - в конце шапки.
Boa Soft
С этого дня я введу практику выкладывания в шапке архива только с одним исполняемым файлом.А вот это правильно, намного удобне, поддержую.
Ссылка - в конце шапки.Может, пора ее прикрепить?
[hr]
Добавлено:
PRESETUP.INI
[Setup]
RootInstallDir=%CDROM%
CdTagFile=Программы\Автозапуск.exe
[Installitem_017]
IconFile=Программы\WinRAR 3.70.exe
Command1=Программы\WinRAR 3.70.exe /s
InstallLog.txt
Command: Программы\WinRAR 3.70.exe /s
Work Dir: %CDROM%\
Cmd Line: %CDROM%\Программы\WinRAR 3.70.exe
Cmd Param: /s
Error: Не удается найти указанный файл.
И так со всеми программами на данном CD. До версии 1.10.12.24 проблем небыло с этим же конфигом!
boss911
Подозреваю, что причина в наличии кириллических символов в "CdTagFile=Программы\Автозапуск.exe".
Наверное связано с изменениями, вызванными 3. CdTagFile теперь ищется и на флешках.
Boa SoftКак -то стимула небыло. А сейчас появился. Там то всего-то надо поменять DRIVE_CDROM на DRIVE_REMOVABLE. Только тогда счет дисков надо не с A а с C начинать, чтобы дисковод не дергался, тем более, он не у всех есть.
Слава Аллаху лед тронулся! Но я бы хотел более универсального решения.
1. Сканированию подвергаются все типы устройств! ( Можно это задавать соотв. перечислением в ini) Ну например можно же подключить второй винт с дистрибутивом - и он то уже не будет скорее всего СЪЕМНЫМ, а станет ФИКСИРОВАНным. А так же сразу бы решили проблему с примонтированными сетевыми дисками.
2. Переименовать для отвязки от конкреного типа ноисетля переменную CdTagFile в нечто типа SourseTagFile или DistrTagFile.
Версия 1.10.12
тестовый режим, все файлы оригинальные.
В PRESETUP.INI как только ставишь RebootNeed=1 в любом месте, после перезагрузки
получаю ошибку:
Ошибка набора конфигурации
Возможные причины:
- файл конфигурации отсутствует
- имеет ошибочную (старую) версию
- имеет неверную структуру
...
Boa Soft
Вспомнил - что еще и устройства SUBST тоже надоть подвергать сканированию. Соображения высказывал ранее.
Я так понимаю добавить просто или в строку анализа типа диска.
чего то упустил .. у мееня с полследнеё бетой теперь файлы на двд не находит
[Setup]
RootInstallDir=%SELF%
CommonIconLib=|%Self%\IconLib.dll
CommonShotFolder=|%Self%\shots
EnableUserInput=1
EnableCloseMsg=1
EnableWelcomeDlg=1
CheckFDD=1
LogFile=%SYSTEMDRIVE%\InstallLog.txt
LogInstall=0
CdTagFile=WIN51IP.SP2
DefaultTimer=60
ReadMeText=%SELF%\readme.rtf
;LicenseText=%SELF%\license.rtf
;RunOnceKey=ZZ_999
;UseRunKey=1
;RunValyeName=TEMP_BS_POSTINSTALLER
;ShowLog=1
;AutoClose=0
YuriPet
что причина в наличии кириллических символову мееня с полследнеё бетой теперь файлы на двд не находит
Значит я не одинок! :(
Boa Soft
Мда! Грустно, но бетка действительно кривовата! Диск не находится!
Об этом говорит и тот факт, что в конфигураторе нет отображения иконок!
При установке соотв. не может ничего найти!
Одинм словом давай все типы драйвов и перекомпиляч до работоспособного состояния!
Ну надо же какое маленькое изменение и полная неработоспособность!
Есть еще маленький ньюанс!
Имеем:
[item_nyx]
Exclude=Item_xyz
Default=1
[item_xyz]
Exclude=Item_nyx
Default=1
Интуитивно я ожидал что конфигуратор оставит выбранным последний итем по списку. Увы они оба выбраны и оба будут устанавливаться!
Либо это надо поправить, либо отобразить в документации?!
Boa Soft
26-06-2007, 17:30
boss911
Может, пора ее прикрепить?
Сильно большая. Сейчас попробую почикать красиво. Если получится - сделаю.
По поводу глюка с файлами - причину понял. Решим. Наверное, просто уберу проверку типа диска, как просили.
Оказывается CD-ROM не входит в Removable - это чисто флешки.
Boa SoftСильно большая. Сейчас попробую почикать красиво. Если получится - сделаю.
Лучше бы новую бетту! Сил нет ждать!
А насчет почикать, так мне кажется лучше впиндюрить плюсик - кому надо раскроет. Я бы так все шапки сделал! Или ссылку на шапку.
Оказывается CD-ROM не входит в Removable - это чисто флешки.
В FARе на панели выбора устройств рядом с буквой диска показывается его тип!(в режиме Ctrl+1)
В TTC тоже видно что это различные ус-ва.
Так что это ты от переутомления!
Debugger
26-06-2007, 20:21
Boa Soft
Чегой-то ни интегратор драйверов файлы не находит, ни теперь Post Installer... Может проблемы из одного корня растут?
Boa Soft Вот если бы еще иконки из пакованных программ показывались!
NikLok
А разве они не показываются? Хм!
[Installitem_010]
IconFile=Интернет и сети\FlashGet 1.88.exe
IconNumber=0
Command1=Интернет и сети\FlashGet 1.88.exe /VERYSILENTС SFX-архивами (RAR) анолично! Я что-то не так понял? :)
boss911 Для него да! Но вот допустим DvdIdle, Siguardian, GhostView и другие иконки которых не может извлечь ResourseHacker. У меня таких штук 15 набралось. Все остальное супер - а эти гады всю картинку портят!
NikLok
Так сделай как я:
[Setup]
CommonIconLib=%Self%\IconLib.dll
[Installitem_001]
IconFile=
IconNumber=2
Command1=Программы\Windows Media\Windows Media 11.exe /q
То есть, собери необходимые иконки в отдельную библиотеку.
boss911 Да вот я так и не смог извлечь иконки из упомянутых приложений!
Ты чем выдергивал. Поагин к ТТС - IclView что у меня глючит!
И потом если приложение сменить оконку придеться её обновлять ручками.
NikLok
Иконки я извлекал уже из установленных приложений, а не из инсталлов, от туда, от куда смог извлечь подручным (ресхакер, рестаратор) способом!
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC