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

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

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

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

Ветеран


Contributor


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


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

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


Изменения
Автор: El Sanchez
Дата: 16-02-2015
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме
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] - Скачать;

  • RegExporter - Фриварная утилита для экспорта реестра и конвертации файлов *.reg и *.ini в инсталляционные скрипты Inno Setup и NSIS.
    Последняя версия: 1.2.0 [23.09.2014] - Скачать;



Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах:

Скрипты Inno Setup. Помощь и советы [часть 6]

Отправлено: 11:48, 10-03-2014

 

Аватара для Mancoffee

Старожил


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

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


Как обойти установку дополнительных компонентов (Inno Script Studio и другие) в "тихой" установке, если нет интернета?

ПС. Знаю, что есть параметр /COMPONENTS , но нигде не нашёл, какие у него подпараметры, то есть как называются.

Отправлено: 01:12, 29-04-2014 | #521



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

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


Ветеран


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

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


Mancoffee,
Параметры командной строки инсталлятора

Отправлено: 07:12, 29-04-2014 | #522


Аватара для Mancoffee

Старожил


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

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


saurn, да вроде как написал, что про параметр /COMPONENTS знаю и про другие тоже. Есть так к примеру help, то есть /COMPONENTS="help"
А как поставить туда Inno Script Studio? Где это описано?

Отправлено: 09:06, 29-04-2014 | #523


Ветеран


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

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


Цитата Mancoffee:
да вроде как написал, что про параметр /COMPONENTS знаю »
Если знаете, к чему вопросы?
Цитата Mancoffee:
Где это описано? »
Да там же и описано. Других предустановленных параметров командной строки инсталляторы инно не имеют. Исключения составляют инсталляторы, где автор оного задал кастомные команды в коде. Рискну предположить, что вы пытаетесь обойти установку студии при установке QuickStart Pack в тихом режиме. В нем - в QuickStart Pack - дополнительные опции (установка препроцессора, студии, инно иде, модуля шифрования) реализованы, как кастомные команды, не относящиеся к секции Components или Tasks, а следовательно стандартные параметры командной строки им до лампочки. Автор инсталятора QuickStart Pack должен был сам указать кастомные параметры для управления установкой этих компонентов, если счел нужным. Сделал ли он это - я не знаю. Как вариант - гляньте в сторону файла ответов.

Отправлено: 11:45, 29-04-2014 | #524


Аватара для Mancoffee

Старожил


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

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


Цитата saurn:
Да там же и описано. »
Конкретизирую вопрос - как тогда обойти установки (если отсутствует интернет; или просто пропуск) Inno Script Studio, PreProcessor и другие?

Отправлено: 14:02, 29-04-2014 | #525


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

Ветеран


Contributor


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

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


Цитата Mancoffee:
как тогда обойти установки (если отсутствует интернет; или просто пропуск) Inno Script Studio, PreProcessor и другие? »
Mancoffee, да никак, разве что перепаковать. Параметров комстроки, отвечающих за закачку сторонних компонентов всего 2 (/allowinnoide и /ispp (не в версии QuickStart Pack)). Первый особо не интересен, т.к. предлагает к закачке среды InnoIDE на странице закачки IDE, а вот второй позволял бы отключить закачку препроцессора (/ispp=0), если бы не детская ошибка в коде официального инсталлятора, приводящая к тому, что галка будет всегда отмечена. Про ISStudio и ISCrypt там вообще ничего.

Последний раз редактировалось El Sanchez, 30-04-2014 в 18:00. Причина: уточнение


Отправлено: 17:18, 30-04-2014 | #526


Аватара для Dodakaedr

Ветеран


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

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


Есть конвертор nsis скриптов в inno формат? Интересует как это сделать
читать дальше »
Код: Выделить весь код
!macro RegisterExtension extenstion 
	;create a class for extesion
		;read/write section state
		!insertmacro ProcessSection ${extenstion}
		;if $r0 is 0 then exit section
		StrCmp $R0 0 EndMacro 0
		;--------------section code----------------			
		
  StrCpy $ClassName "AIMP.${extenstion}"
  StrCmp ${extenstion} "AUDIOCD" 0 noaudio
	WriteRegStr HKCR "${extenstion}" "" "$ClassName"
	DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${extenstion}\UserChoice"
	WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${extenstion}\UserChoice" "Progid" "$ClassName"
  noaudio:
  WriteRegStr HKCR ".${extenstion}" "" "$ClassName"
  DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.${extenstion}\UserChoice"
  WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.${extenstion}\UserChoice" "Progid" "$ClassName"
  WriteRegStr HKCR "$ClassName\CLSID" "" "{0041494D-5032-4472-6F70-546172676574}"
  WriteRegStr HKCR "$ClassName\shell\open" "" "Открыть в AIMP2"
  WriteRegStr HKCR "$ClassName\shell\open\command" "" "$OpenCommand"
  WriteRegStr HKCR "$ClassName\shell\open\DropTarget" "CLSID" "{0041494D-5032-4472-6F70-546172676574}"
  WriteRegStr HKCR "CLSID\{0041494D-5032-4472-6F70-546172676574}" "" "AIMP"
  WriteRegStr HKCR "CLSID\{0041494D-5032-4472-6F70-546172676574}\LocalServer32" "" "$Exe_Path"
  WriteRegStr HKCR "CLSID\{0041494D-5032-4472-6F70-546172676574}\ProgID" "" "AIMP.TDropTarget"
  WriteRegStr HKCR "AIMP.TDropTarget" "" "AIMP"
  WriteRegStr HKCR "AIMP.TDropTarget\Clsid" "" "{0041494D-5032-4472-6F70-546172676574}"
 
	;define  icon for class
	${Switch} ${extenstion}	
		${Case}	"AAC"
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Advanced Audio Codec"
			${Break} 	
	
		${Case}	"AC3"
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Dolby Digital AC-3"
			${Break} 
	
		${Case} "ACS2"
			StrCpy $IconIndex 8
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Skin Package"
			${Break}	
	
		${Case} "AIF"
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Apple Audio"
			${Break}	
		
		${Case} "AIFF"
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Apple Audio"
			${Break}	

		${Case} "APE"
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Monkey's Audio"
			${Break}
			
		${Case} "AUDIOCD"
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Audio CD Autorun"
			${Break}			
	
		${Case} "CDA"
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: CD Digital Audio"
			${Break}	

		${Case} "CUE"
			StrCpy $IconIndex 9
			WriteRegStr HKCR "$ClassName" "" "AIMP2: CUE Sheet"
			${Break}			
	
		${Case} "FLA"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Free Lossless Audio"
			StrCpy $IconIndex 6
			${Break}	
			
		${Case} "FLAC"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Free Lossless Audio"
			StrCpy $IconIndex 6
			${Break}				
			
		${Case} "IT"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Impulse Tracker Module"
			StrCpy $IconIndex 5
			${Break}			

		${Case} "KAR"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MIDI Audio"
			StrCpy $IconIndex 4
			${Break}	

		${Case} "M3U"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: M3U Playlist"
			StrCpy $IconIndex 9				
			${Break}
			
		${Case} "M3U8"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: M3U (Unicoded) Playlist"
			StrCpy $IconIndex 9				
			${Break}
			
		${Case} "M4A"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Apple Lossless Audio Codec"
			StrCpy $IconIndex 1				
			${Break}			
			
		${Case} "MAC"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Monkey's Audio"
			StrCpy $IconIndex 4				
			${Break}	

		${Case} "MID"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MIDI Audio"
			StrCpy $IconIndex 4				
			${Break}	

		${Case} "MIDI"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MIDI Audio"
			StrCpy $IconIndex 4				
			${Break}

		${Case} "MO3"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Compressed Tracker Module"
			StrCpy $IconIndex 5				
			${Break}
		
		${Case} "MOD"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Compressed Tracker Module"
			StrCpy $IconIndex 5				
			${Break}
			
		${Case} "MP+"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MusePack Audio"
			StrCpy $IconIndex 7				
			${Break}

		${Case} "MP1"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MPEG Layer 1"
			StrCpy $IconIndex 1				
			${Break}

		${Case} "MP2"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MPEG Layer 2"
			StrCpy $IconIndex 1				
			${Break}	

		${Case} "MP3"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MPEG Layer 3"
			StrCpy $IconIndex 1				
			${Break}

		${Case} "MPC"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MusePack Audio"
			StrCpy $IconIndex 7				
			${Break}

		${Case} "MPP"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MusePack Audio"
			StrCpy $IconIndex 7				
			${Break}

		${Case} "MTM"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Tracker Module"
			StrCpy $IconIndex 5				
			${Break}	

		${Case} "OFR"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: OptimFROG"
			StrCpy $IconIndex 4				
			${Break}

		${Case} "OFS"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: OptimFROG"
			StrCpy $IconIndex 4				
			${Break}	

		${Case} "OGA"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Ogg Vorbis Audio"
			StrCpy $IconIndex 2				
			${Break}	

		${Case} "OGG"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Ogg Vorbis Audio"
			StrCpy $IconIndex 2				
			${Break}	

		${Case} "PLC"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: PLC Playlist"
			StrCpy $IconIndex 9				
			${Break}

		${Case} "PLS"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: PLS Playlist"
			StrCpy $IconIndex 9				
			${Break}

		${Case} "RMI"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: MIDI Audio"
			StrCpy $IconIndex 4				
			${Break}	

		${Case} "S3M"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Scream Tracker 3 Module"
			StrCpy $IconIndex 5				
			${Break}

		${Case} "SPX"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Speex"
			StrCpy $IconIndex 5				
			${Break}	

		${Case} "TTA"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: The True Audio"
			StrCpy $IconIndex 4			
			${Break}

		${Case} "UMX"
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Unreal Music File"
			StrCpy $IconIndex 5			
			${Break}			

		${Case} "WAV"
			StrCpy $IconIndex 0
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Windows WAVE"
			${Break} 	
		
		${Case} "WMA"
			StrCpy $IconIndex 3
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Windows Media Audio"
			${Break} 		
			
		${Case} "WV"
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: WavPack"
			${Break}

		${Case} "XM"
			StrCpy $IconIndex 5
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Fast Tracker Module"
			${Break} 
			
		${Default}
			StrCpy $IconIndex 4
			WriteRegStr HKCR "$ClassName" "" "AIMP2: Media File"
			${Break}
	${EndSwitch}
  WriteRegStr HKCR "$ClassName\DefaultIcon" "" "$IconFile,$IconIndex"	
  EndMacro:
!macroend



!macro UnRegisterExtension extenstion
  StrCpy $ClassName "AIMP.${extenstion}"
  
  StrCmp ${extenstion} "AUDIOCD" 0 +7
	ReadRegStr $0 HKCR "${extenstion}" ""
	StrCmp $0	$ClassName 0 +2
	DeleteRegKey HKCR "$ClassName"
	ReadRegStr $0 HKCR "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${extenstion}\UserChoice" ""
	StrCmp $0	$ClassName 0 +2
	DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\${extenstion}\UserChoice"

	ReadRegStr $0 HKCR ".${extenstion}" ""
  StrCmp $0	$ClassName 0 +2
  DeleteRegKey HKCR "$ClassName"
  
  ReadRegStr $0 HKCR "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.${extenstion}\UserChoice" ""
  StrCmp $0	$ClassName 0 +2
  DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.${extenstion}\UserChoice"
!macroend

SectionGroup /e "Ассоциации файлов"

	Section "-SetupIconsVariables"
		StrCmp $gMode 1 NotgMode	
		;default icon file
		StrCpy $IconFileName "aimp2.dll"
		IfSilent 0 EndSection
			IfFileExists $IniFile 0 EndSection
			ReadINIStr $R0 $IniFile Advanced IconFileName
			IfFileExists "$INSTDIR\Icons\$R0" 0 EndSection
			StrCpy $IconFileName $R0
		EndSection:
			StrCpy $IconFile "$INSTDIR\Icons\$IconFileName"
			StrCpy $OpenCommand "$INSTDIR\AIMP2.exe $\"%1$\""
			StrCpy $Exe_Path "$INSTDIR\AIMP2.exe"
		NotgMode:	
	SectionEnd
	
	Section "Контекстое меню проводника" ContextMenu
		SectionIn 1 2
		;read/write section state
		!insertmacro ProcessSection "ContextMenu"
		;if $r0 is 0 then exit section
		StrCmp $R0 0 EndSection 0
		;--------------section code----------------		
		RegDLL  "$INSTDIR\System\aimp_shell.dll"
		EndSection:
	SectionEnd
	
	Section "AAC" AAC
		SectionIn 1 2
		!insertmacro RegisterExtension "AAC"
	SectionEnd
	
	Section "AC3" AC3
		SectionIn 1 2
		!insertmacro RegisterExtension "AC3"
	SectionEnd

	Section "ACS2" ACS2
		SectionIn 1 2
		!insertmacro RegisterExtension "ACS2"
	SectionEnd	

	Section "AIF" AIF
		SectionIn 1 2
		!insertmacro RegisterExtension "AIF"
	SectionEnd		
	
	Section "AIFF" AIFF
		SectionIn 1 2
		!insertmacro RegisterExtension "AIFF"
	SectionEnd	
	
	Section "APE" APE
		SectionIn 1 2
		!insertmacro RegisterExtension "APE"
	SectionEnd	
	
	Section "AUDIOCD" AUDIOCD
		SectionIn 1 2
		!insertmacro RegisterExtension "AUDIOCD"
	SectionEnd		
	
	Section "CDA" CDA
		SectionIn 1 2
		!insertmacro RegisterExtension "CDA"
	SectionEnd	
	
	Section "CUE" CUE
		SectionIn 1 2
		!insertmacro RegisterExtension "CUE"
	SectionEnd	

	Section "FLA" FLA
		SectionIn 1 2
		!insertmacro RegisterExtension "FLA"
	SectionEnd
	
	Section "FLAC" FLAC
		SectionIn 1 2
		!insertmacro RegisterExtension "FLAC"
	SectionEnd	
	
	Section "IT" IT
		SectionIn 1 2
		!insertmacro RegisterExtension "IT"
	SectionEnd

	Section "KAR" KAR
		SectionIn 1 2
		!insertmacro RegisterExtension "KAR"
	SectionEnd
	
	Section "M3U" M3U
		SectionIn 1 2
		!insertmacro RegisterExtension "M3U"
	SectionEnd	

	Section "M3U8" M3U8
		SectionIn 1 2
		!insertmacro RegisterExtension "M3U8"
	SectionEnd	

	Section "M4A" M4A
		SectionIn 1 2
		!insertmacro RegisterExtension "M4A"
	SectionEnd		
	
	Section "MAC" MAC
		SectionIn 1 2
		!insertmacro RegisterExtension "MAC"
	SectionEnd	

	Section "MID" MID
		SectionIn 1 2
		!insertmacro RegisterExtension "MID"
	SectionEnd	
	
	Section "MIDI" MIDI
		SectionIn 1 2
		!insertmacro RegisterExtension "MIDI"
	SectionEnd		

	Section "MO3" MO3
		SectionIn 1 2
		!insertmacro RegisterExtension "MO3"
	SectionEnd

	Section "MOD" MOD
		SectionIn 1 2
		!insertmacro RegisterExtension "MOD"
	SectionEnd
	
	Section "MP+" MP+
		SectionIn 1 2
		!insertmacro RegisterExtension "MP+"
	SectionEnd
	
	Section "MP1" MP1
		SectionIn 1 2
		!insertmacro RegisterExtension "MP1"
	SectionEnd	
	
	Section "MP2" MP2
		SectionIn 1 2
		!insertmacro RegisterExtension "MP2"
	SectionEnd	
	
	Section "MP3" MP3
		SectionIn 1 2
		!insertmacro RegisterExtension "MP3"
	SectionEnd	
	
	Section "MPC" MPC
		SectionIn 1 2
		!insertmacro RegisterExtension "MPC"
	SectionEnd

	Section "MPP" MPP
		SectionIn 1 2
		!insertmacro RegisterExtension "MPP"
	SectionEnd	

	Section "MTM" MTM
		SectionIn 1 2
		!insertmacro RegisterExtension "MTM"
	SectionEnd	
	
	Section "OFR" OFR
		SectionIn 1 2
		!insertmacro RegisterExtension "OFR"
	SectionEnd		

	Section "OFS" OFS
		SectionIn 1 2
		!insertmacro RegisterExtension "OFS"
	SectionEnd	
	
	Section "OGA" OGA
		SectionIn 1 2
		!insertmacro RegisterExtension "OGA"
	SectionEnd	

	Section "OGG" OGG
		SectionIn 1 2
		!insertmacro RegisterExtension "OGG"
	SectionEnd	
	
	Section "PLC" PLC
		SectionIn 1 2
		!insertmacro RegisterExtension "PLC"
	SectionEnd
	
	Section "PLS" PLS
		SectionIn 1 2
		!insertmacro RegisterExtension "PLS"
	SectionEnd	
	
	Section "RMI" RMI
		SectionIn 1 2
		!insertmacro RegisterExtension "RMI"
	SectionEnd	

	Section "S3M" S3M
		SectionIn 1 2
		!insertmacro RegisterExtension "S3M"
	SectionEnd		

	Section "SPX" SPX
		SectionIn 1 2
		!insertmacro RegisterExtension "SPX"
	SectionEnd

	Section "TTA" TTA
		SectionIn 1 2
		!insertmacro RegisterExtension "TTA"
	SectionEnd
	
	Section "UMX" UMX
		SectionIn 1 2
		!insertmacro RegisterExtension "UMX"
	SectionEnd	
	
	Section "WAV" WAV
		SectionIn 1 2
		!insertmacro RegisterExtension "WAV"
	SectionEnd	
	
	Section "WMA" WMA
		SectionIn 1 2
		!insertmacro RegisterExtension "WMA"
	SectionEnd	
	
	Section "WV" WV
		SectionIn 1 2
		!insertmacro RegisterExtension "WV"
	SectionEnd		
	
	Section "XM" XM
		SectionIn 1 2
		!insertmacro RegisterExtension "XM"
	SectionEnd
	
	Section "-RefreshIcons"
		SectionIn 1 2 3
		StrCmp $gMode 1 +2 0
		${RefreshShellIcons}
	SectionEnd
SectionGroupEnd

-------
Inno Setup 5 Ultra Unicode


Последний раз редактировалось Dodakaedr, 01-05-2014 в 17:35.


Отправлено: 17:14, 01-05-2014 | #527


Пользователь


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

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


Dodakaedr, интересно,а по какому принципу конвертер должен работать? я точно не встречал,даже не интересовался.

Отправлено: 19:44, 01-05-2014 | #528


Аватара для Dodakaedr

Ветеран


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

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


sergey3695, ну приблизительно как конвертор с inno в nsis.

-------
Inno Setup 5 Ultra Unicode


Отправлено: 20:51, 01-05-2014 | #529


Аватара для Dodakaedr

Ветеран


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

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


Из справки:
читать дальше »
Цитата:
В этом скрипте при инсталляции в бэкап сохраняются (перемещением) только те файлы, которые инсталлятор заменяет. При удалении, эти же файлы восстанавливаются (тоже перемещением).
Код: Выделить весь код
#include "SHFileOperation.iss" 

[Setup] 
AppName=My Program 
AppVerName=My Program version 1.5 
DefaultDirName={pf}\My Program 
DisableProgramGroupPage=yes 

[Files] 
Source: Files\*.*; DestDir: {app}; Flags: ignoreversion recursesubdirs; BeforeInstall: CreateBackup 

[ Code] 
function MoveFile(const srcFile, destFile: PChar):Integer; 
external 'MoveFileA@kernel32.dll stdcall'; 

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); 
begin 
if CurUninstallStep = usPostUninstall then 
begin 
MoveDir(ExpandConstant('{app}\Backup\'),ExpandConstant('{app}')); 
RemoveDir(ExpandConstant('{app}\Backup\')); 
end; 
end; 

procedure CreateBackup; 
var 
srcFile, destFile: string; 
basePath, shortPath: string; 
begin 
basePath:= ExpandConstant('{app}'); 
srcFile:= ExpandConstant(CurrentFileName); 
shortPath:= srcFile; 
StringChangeEx(shortPath, basePath, '', True); 
destFile:= ExpandConstant('{app}\Backup') + shortPath; 
ForceDirectories(ExtractFilePath(destFile)); 
MoveFile(PChar(srcFile), PChar(destFile)); 
end;
Сделайте, пожалуйста такой же код, но для реестра, чтобы перед установкой создавался бекап, а при удалении восстанавливался. И чтобы бекап создавался в той ветке реестра в которой инсталлятор изменяет значение. Важным в коде должно быть, то что я выделил жирным... если это возможно, конечно.

-------
Inno Setup 5 Ultra Unicode


Отправлено: 16:34, 02-05-2014 | #530



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипты Inno Setup. Помощь и советы [часть 6] El Sanchez Автоматическая установка приложений 2494 10-03-2014 11:51
Скрипты Inno Setup. Помощь и советы [часть 5] El Sanchez Автоматическая установка приложений 1999 28-03-2013 19:09
Скрипты Inno Setup. Помощь и советы [часть 4] El Sanchez Автоматическая установка приложений 2099 22-05-2012 23:16
Скрипты Inno Setup. Помощь и советы [часть 3] Serega Автоматическая установка приложений 3755 26-10-2011 17:58
[архив] Скрипты Inno Setup. Помощь и советы [часть 2] Serega Автоматическая установка приложений 2651 08-11-2010 18:34




 
Переход