Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Автоматическая установка приложений (http://forum.oszone.net/forumdisplay.php?f=61)
-   -   Тихая установка 3DMark06 (http://forum.oszone.net/showthread.php?t=102389)

DaDe 08-03-2008 23:25 756229

Тихая установка 3DMark06
 
Долго искал путь тихой установки 3DMark 2006, без использования AutoIT скриптов, но не нашел подходящего стабильного варианта. Если кто знает, напишите.
Поэтому по извращавшись с установкой 3DMark 2006 придумал извращенный метод, но работающий.
Вкратце:
До запуска установки запускается программа, которая устанавливает OpenAl библиотеки.
И в папке, куда устанавливается 3Dmark, создается файл с именем OpenALwEAX.exe и блокируется запись в этот файл.
Во время установки 3Dmark осуществляет копирование файлов, OpenALwEAX.exe заменить не сможет, поэтому то и не возникнет данного окошка.

В результате данного метода 3Dmark тихо устанавливается, но есть небольшие побочные явления:
1. Для данного метода нужен другой файл ответов. В связи с тем, что 3Dmark не смог скопировать OpenALwEAX.exe, он спросит, перезагрузить компьютер или нет после установки.
2. Запишет команду в реестр, в результате которой после перезагрузки переименует один файл в папке 3Dmark (но это совсем не критично).
Вроде и все, больше ничего побочного не нашел.

P.S. Если кому пригодится, то смогу выложить программку, которая все это делает (Если найдутся такие экспериментаторы).

KAPAKyPT 09-03-2008 10:33 756343

Я поступил проще. Но для 3DMark05. Думаю для 06 разница небольшая.
На рабочую машину установмл Марк, пропатчил (В том числе и сисинфо для новых АТИ), запаковал в sfx-архив.

Параметры архива:

Код:

Path=%systemdrive%\Test\3DMark05\
SavePath
Setup=regedit -s %systemdrive%\Test\3DMark05\reg.reg
Silent=1
Overwrite=1

Файл reg.reg

Код:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\3DMark05]
"UninstallString"="%systemdrive%\\Test\\3DMark05\\uninst.bat"
"DisplayName"="3DMark05"
"DisplayIcon"="%systemdrive%\\Test\\3DMark05\\3DMark05.exe"
"DisplayVersion"="1.2.0"
"InstallLocation"="%systemdrive%\\Test\\3DMark05"
"Version"=dword:01020000
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000002

[HKEY_CURRENT_USER\Software\Futuremark]

[HKEY_CURRENT_USER\Software\Futuremark\3DMark05]

[HKEY_LOCAL_MACHINE\SOFTWARE\Futuremark]

[HKEY_LOCAL_MACHINE\SOFTWARE\Futuremark\3DMark05]
"KeyCode"="*****-*****-*****-*****"

[HKEY_LOCAL_MACHINE\SOFTWARE\Futuremark\3DMark05\1.0.0]

[HKEY_LOCAL_MACHINE\SOFTWARE\Futuremark\3DMark05\1.2.0]

файл uninst.bat:

Код:

cmdow @ /HID
regedit -s uninstall.reg
RD /S /Q "%systemdrive%\3DMark05"

файл uninstall.reg:

Код:

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\3DMark05]

[-HKEY_CURRENT_USER\Software\Futuremark\3DMark05]

[-HKEY_LOCAL_MACHINE\SOFTWARE\Futuremark\3DMark05]

У меня все работает (пробовал на многих машинах).

Spirkaa 09-03-2008 11:52 756382

KAPAKyPT, на 06 версии такой способ тоже работает, никаких заморочек с батниками и скриптами

R@MZEZzz 09-03-2008 15:49 756499

Я в reg.reg еще такие строчки добавил, чтобы марк не раздражал подсказками.
Код:

[HKEY_CURRENT_USER\Software\Futuremark\3DMark05\Settings]
"NextTip"=dword:00000000
"DoNotShowTipOfTheDay"=dword:00000001

И в параметрах SFX прописал ярлык как "3dmark05.exe -nosysteminfo". Так он запускается гораздо быстрее, а systeminfo и в Everest'е посмотреть можно :)

unikum111 09-03-2008 18:05 756556

ИМХО, вместо SFX проще (хотя не для всех) воспользоваться инсталлятором, напеример INNO. Во-первых, более корректное удаление ключей реестра после деинсталляции, Во-вторых по размеру, как правило, сопоставимо с SFX (метод сжатия одинаковый - Lzma), В-третих, приятный графический интерфейс инсталлятора с возможностью выбора различных опций.

e_consul 11-05-2008 21:05 799837

Доброго времени суток.
Почитал все 3 темы, посвященные автоустановке 3DMark и везде ключ добавляется отдельным .reg файлом, хотя в файле setup.iss есть отдельная строчка для него. Она не работает? Есть ли способы поставить программу, чтобы ключ подхватился автоматически?
Я запускал уже и запакованный и распакованный вариант. Все замечательно устанавливается, но ключ потом все равно просит. :( Ставлю способом RunOnceEx.

Valek271183 18-01-2013 20:46 2069867

Подскажите пожалуйста, есть ли у 3DMakr06 возможность запуска из командной строки

GM001 20-11-2013 00:06 2258186

пример функции тихой установки марка 06, перед вызовом функции не забываем #RequireAdmin
серийник вводится в реестр, ненужные запросы при запуске выключаются
возможно будет запрос на установку DirectX 9, но у меня он ставится отдельно ранее

Func mark2006 ()
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Futuremark\3DMark06", "KeyCode")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Futuremark\3DMark06", "")
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Futuremark\3DMark06", "KeyCode")
RegDelete("HKEY_CURRENT_USER\Software\Futuremark\3DMark06\")
Global $Title='3DMark06 - InstallShield Wizard', $serial='тут я думаю понятно....'
Run("3DMark06_v102_installer.exe ")
WinWait ( $Title, 'Welcome to the InstallShield Wizard for 3DMark06 (version 1.0.2)' )
WinActivate ( $Title, 'Welcome to the InstallShield Wizard for 3DMark06 (version 1.0.2)' )
Sleep (500)
Send ( '{ENTER}' )
WinWait ( $Title, 'License Agreement' )
WinActivate ( $Title, 'License Agreement' )
Sleep (500)
Send ("{UP}")
Sleep (500)
Send ( '{ENTER}' )
Sleep (500)
Send ( '{ENTER}' )
Sleep (500)
Send ( '{ENTER}' )
WinWait ( 'OpenAL Installer', 'Creative Labs' )
WinActivate ( 'OpenAL Installer', 'Creative Labs' )
ControlClick ('OpenAL Installer', "OK", "Button2") ; нажали ОК
Sleep (500)
WinWait ( 'OpenAL Installer Message', 'Installation complete' )
WinActivate ( 'OpenAL Installer Message', 'Installation complete' )
Sleep (500)
Send ( '{ENTER}' )
WinWait ( $Title, 'Futuremark Registration' )
WinActivate ( $Title, 'Futuremark Registration' )
Sleep (500)
Send ( '{TAB 3}' )
Sleep (500)
Send ( '{ENTER}' )
Sleep (500)
Send ( '{SPACE}' )
Sleep (500)
Send ( '{ENTER}' )

RegWrite("HKEY_CURRENT_USER\Software\Futuremark\3DMark06\Settings","DoNotShowTipOfTheDay","REG_DWORD ","1")
If $bit_win7=32 Then
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Futuremark\3DMark06","KeyCode","REG_SZ",$serial)
Else
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Futuremark\3DMark06", "KeyCode", "REG_SZ", $serial)
EndIf

ProcessWaitClose ( "3DMark06_v102_installer.exe", 50 )
Return
EndFunc

$bit_win7 у меня равна 32 либо 64, вычисляется другой функцией


Время: 19:14.

Время: 19:14.
© OSzone.net 2001-