Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для semiono

Ветеран


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

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


Немного переделанный скрипт:
Alcohol_52% 4.12.7.6221, AutoIt 3.2.12.1
читать дальше »

$Title='Alcohol'
$SetupFile='Alcohol.exe'
$InstallPath=@ProgramFilesDir & '\Alcohol'

Blockinput(1)

run($SetupFile)

winwaitactive($Title,'Welcome to the Alcohol')
send('{ENTER}')

winwaitactive($Title,'License Agreement')
send('{ENTER}')

if winexists($Title,'Not for Business Use') Then
winwaitactive($Title,'Not for Business Use')
controlclick($Title,'Not for Business Use','Include the Alcohol Soft Toolbar (recommended).','left',1)
sleep(100)
send('{ENTER}')
endif

; отказываемся от установки всех компонентов:
winwaitactive($Title,'Choose Components')
send('{DOWN} {BS}')
send('{DOWN} {BS}')
send('{DOWN} {BS}')
send('{DOWN} {BS}')
sleep(100)
send('{ENTER}')

winwaitactive($Title,'Choose Install Location')
send($InstallPath)
send('{ENTER}')

winwaitactive($Title,'Completing the Alcohol')

controlclick($Title,'Completing the Alcohol','Button4','left',1)
controlclick($Title,'Completing the Alcohol','Add Alcohol Virtual Drive at first run.','left',1)
sleep(100)
send('{ENTER}')

; удаляем мусор :-
FileDelete($InstallPath & "\uninst.exe")

; устанавливаем значёк на папке программы:

$file = FileOpen($InstallPath & "\desktop.ini", 10)

FileWrite($file, "[.ShellClassInfo]" & @CRLF)
FileWrite($file, "IconFile=Alcohol.exe" & @CRLF)
FileWrite($file, "IconIndex=0" & @CRLF)

FileClose($file)

FileSetAttrib($InstallPath, "+R")

; устанавливаем ярлык в меню "Administrator":

FileCreateShortcut($InstallPath & "\Alcohol.exe", @UserProfileDir & "\SendTo\Alcohol.lnk", $InstallPath, "", "Alcohol", "", "", 0, @SW_SHOWNORMAL)
FileCreateShortcut($InstallPath & "\Alcohol.exe", @ProgramsDir & "\Alcohol.lnk", $InstallPath, "", "Alcohol", "", "", 0, @SW_SHOWNORMAL)

; удаляем ярлыки из меню "All Users":

DirRemove(@ProgramsCommonDir & "\Alcohol 52%", 1)

; Registry
RegWrite("HKLM\Software\Classes\.ccd", "", "REG_SZ", "AlcoholImageFile")
RegWrite("HKLM\Software\Classes\.cue", "", "REG_SZ", "AlcoholImageFile")
;
RegWrite("HKLM\Software\Classes\AlcoholImageFile\DefaultIcon", "", "REG_SZ", "%1")
RegWrite("HKLM\Software\Classes\AlcoholImageFile\ShellEx\ContextMenuHandlers\AlcoholShellEx", "", "REG_SZ", "{32020A01-506E-484D-A2A8-BE3CF17601C3}")
RegWrite("HKLM\Software\Classes\AlcoholImageFile\ShellEx\IconHandler", "", "REG_SZ", "{32020A01-506E-484D-A2A8-BE3CF17601C3}")
;
; устанавливаем ярлык на "MyComputer":
RegWrite("HKLM\Software\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Alcohol", "", "REG_SZ", "&Alcohol")
RegWrite("HKLM\Software\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Alcohol\command", "", "REG_SZ", $InstallPath & "\Alcohol.exe")
;
RegWrite("HKLM\Software\Classes\CLSID\Interface\{00C724A3-E741-4CE7-B3E4-2FABB3FA2CBE}", "", "REG_SZ", "IAlcoholShellEx")
RegWrite("HKLM\Software\Classes\CLSID\Interface\{00C724A3-E741-4CE7-B3E4-2FABB3FA2CBE}\ProxyStubClsid", "", "REG_SZ", "{00020424-0000-0000-C000-000000000046}")
RegWrite("HKLM\Software\Classes\CLSID\Interface\{00C724A3-E741-4CE7-B3E4-2FABB3FA2CBE}\ProxyStubClsid32", "", "REG_SZ", "{00020424-0000-0000-C000-000000000046}")
RegWrite("HKLM\Software\Classes\CLSID\Interface\{00C724A3-E741-4CE7-B3E4-2FABB3FA2CBE}\TypeLib", "", "REG_SZ", "{DFFAEA82-07FA-4440-9A52-D54EB21C627F}")
RegWrite("HKLM\Software\Classes\CLSID\Interface\{00C724A3-E741-4CE7-B3E4-2FABB3FA2CBE}\TypeLib", "Version", "REG_SZ", "1.0")
;
RegWrite("HKLM\Software\Classes\CLSID\TypeLib\{DFFAEA82-07FA-4440-9A52-D54EB21C627F}\1.0", "", "REG_SZ", "AXShlEx Library")
RegWrite("HKLM\Software\Classes\CLSID\TypeLib\{DFFAEA82-07FA-4440-9A52-D54EB21C627F}\1.0\0\win32", "", "REG_SZ", $InstallPath & "\AXShlEx.dll")
RegWrite("HKLM\Software\Classes\CLSID\TypeLib\{DFFAEA82-07FA-4440-9A52-D54EB21C627F}\1.0\flags", "", "REG_SZ", "0")
RegWrite("HKLM\Software\Classes\CLSID\TypeLib\{DFFAEA82-07FA-4440-9A52-D54EB21C627F}\1.0\helpdir", "", "REG_SZ", $InstallPath & "\")
;
; добавляем возможность запуска из меню "Run":
RegWrite("HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\Alcohol.exe", "", "REG_SZ", $InstallPath & "\Alcohol.exe")
RegWrite("HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\Alcohol.exe", "Path", "REG_SZ", $InstallPath & "\")
;
RegDelete("HKCU\Software\Alcohol Soft")
;
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Basic", "Virtual Device Count", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Basic", "Left", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Basic", "Top", "REG_SZ", "22")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Basic", "Height", "REG_SZ", "816")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Basic", "Width", "REG_SZ", "1152")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Basic\UI", "Main Column", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Basic\UI", "Help Column", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Basic\UI", "Option Column", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Info", "UserName", "REG_SZ", "Semiono")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options", "Language", "REG_SZ", "1033")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Display", "AutostartWhenWindowsStartup", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Display", "CleanFileListBeforeImporting", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Display", "ExecuteInFullScreen", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Display", "ListPhysicalDevicesFirst", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Display", "NotifyDiscrepanciesWithImageFiles", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Display", "ShowApplicationIn", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Display", "ShutdownApplicationAfterPushingCloseBtn", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Display", "TrayIconIndex", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Emulation", "LaunchCDVDManagerWithoutIgnoreMediaTypeFunction", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\General", "AutoCheckCurrentVersionViaInternetAtStart", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\General", "DeleteFileDirectly", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\General", "EnableAutoPlay", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\General", "EnableScreenSaver", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\General", "IOControlInterface", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\General", "OneInstanceOnly", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Log Files", "AutoSaveDumpingLog", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Log Files", "RecordingLog", "REG_SZ", $InstallPath & "\alcohol.log")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Log Files", "ReporttoLogfile", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Log Files", "SaveSpeedData", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Reading", "DefaultASSJumpFactor", "REG_SZ", "100")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Reading", "DefaultDPMMeasuringPrecision", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Reading", "EjectSourceDiscAfterProcess", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Reading", "EnableEnhancedWeakSectorScanner", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Reading", "ExamineTheAccuracyOfDataReadFromDevice", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Reading", "LockTheDeviceWhileGettingDPMdataFromTheMedia", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Reading", "NumberOFRetriesBeforeReadingError", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Reading", "StartingASSAfterContinuseBadSectors", "REG_SZ", "8")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Shell Extension", "EnableOtherExtensions", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Shell Extension", "ExchangeIconForAlcoholDefault", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Shell Extension", "OtherExtensions", "REG_SZ", "")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Sound Effect", "PlaySounds", "REG_SZ", "0")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Virtual drive", "MountImageTo1stDeviceOnDblClickingImageFile", "REG_SZ", "1")
RegWrite("HKCU\Software\Alcohol Soft\Alcohol 52%\Options\Virtual drive", "RemountImageUponSystemReboot", "REG_SZ", "1")
;

; добавляем возможность запуска из консоли cmd.exe;-
$file = FileOpen(@SystemDir & "\Alcohol.cmd", 10)

FileWrite($file, "@start " & $InstallPath & "\Alcohol.exe " & """%1""" & @CRLF)

FileClose($file)

Run("regsvr32.exe /s AXShlEx.dll", $InstallPath)

Blockinput(0)




добавленно сегодня:
прикол в том, что чем болше настроек в реестре предустановленно тем больше проблем ;-
вот когда была чистая установка всё работало правильно, но теперь у мну не появляется
"монтировать на виртуал драйв" в проводнике - интересно от чего это зависит!
если не лезть в реестр установщик сам всё делает правильно. Но ведь хочется чуть опций поднастроить...
теперь надо искать что мешает! Ведь даже AXShlEx.dll было зарегистрированно - что ещё ему надо!
Разницы чёй-то совсем не могу понять! Всё один в один было. 0_o

а ещё проблемма, что это не годится для тихой установки в nLite!
ведь окна не должны быть видны! (AutoIt не хочет нажимать скрытые окна - InnoSetup.exe /VERYSILENT)
хотя я думаю что ничего страшного не произойдёт если окно выскочит во время установки Windows,
просто будет торчать окно! хотя это не очень красиво?


добавленно сегодня, сегодня:
из-за такого пустячка целый день провозился!
оказывается Alcohol сам мишет этот кей, а у меня было с "ошибкой"!
RegWrite("HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\Alcohol.exe", "Path", "REG_SZ", $InstallPath & "\")
Если бы все девелоперы сами добросовесно писали бы повсюду, я бы и не лез туда.
Вообщем без этого слеша проподает опция монтирования в проводнике!
Сам этот кей писать не надо так как Алкоголь его сам генерит, когда там нету App Paths\Alcohol.exe

Последний раз редактировалось semiono, 18-09-2008 в 15:48.


Отправлено: 00:29, 17-09-2008 | #53