; Action list for GFX/HDMI (IVB)

[Variables]
product=Intel(R) Processor Graphics
installDir=%ProgFilesDir%\Intel\%product%
GFXVer=%getdriverversion(GFX)%
MSDKSRC=%source%\MediaSDK\%MSDK_SRC%\win32
MSDKSRC64=%source%\MediaSDK\%MSDK_SRC%\x64
MSDKDEST15=%commonappsdir%\Intel\Media SDK\i1\1.5
MSDKDEST1564=%commonappsdir64%\Intel\Media SDK\i1\1.5
MSDKDEST20=%commonappsdir%\Intel\Media SDK\s1\2.0
MSDKDEST2064=%commonappsdir64%\Intel\Media SDK\s1\2.0
MSDKDEST30=%commonappsdir%\Intel\Media SDK\i2\3.0
MSDKDEST3064=%commonappsdir64%\Intel\Media SDK\i2\3.0


[Groups]
ARP=NOT IsCmd(noarp) AND NOT IsCmd(nogfxdrv)
GFX=NOT IsCmd(nodrv) AND NOT IsCmd(nogfxdrv) AND IfDrvExists(GFX)
HDMI=NOT IsCmd(nodrv) AND IfDrvExists(HDMI)
MEDIA=IsVar(HDAUDIO,1) AND IfExists("%source%"\Media\Media.cab) AND IsOS(VISTA,VISTA_MAXSP)
IIPS=NOT IsCmd(nodrv) AND IfDrvExists(IIPS)
ICC=NOT IsCmd(noicc) AND IfExists("%source%"\ICC)
MSDK20=IsGroupSel(GFX) AND IsVar(MSDK_SRC,SNB) AND NOT IsWinN AND NOT IsOS(WIN2008,WIN2008_MAXSP) AND NOT IsOS(WIN2008_R2,WIN2008_R2_MAXSP)
MSDK30=IsGroupSel(GFX) AND IsVar(MSDK_SRC,IVB) AND NOT IsWinN AND NOT IsOS(WIN2008,WIN2008_MAXSP) AND NOT IsOS(WIN2008_R2,WIN2008_R2_MAXSP)
GFXOCL=IsGroupSel(GFX) AND IfExists("%source%"\Graphics\OpenCL.dll) AND IsOS(VISTA,MAXOS)
CPUOCL=IsGroupSel(GFX) AND IfExists("%source%"\OpenCL\OCLSetup.exe) AND IsOS(VISTA,MAXOS)
ICCS=IsGroupSel(GFX) AND IfExists("%source%"\ICCS\SetupICCS.exe) AND IsOS(VISTA,MAXOS)
FUA=NOT IsCmd(notc) AND IfExists("%source%"\Update Manager\IntelUpdateManager.msi)
SHORTCUTS=NOT IsCmd(nosc) AND IfExists("%source%"\Graphics\IntelInvokePanel.exe)


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Setup files             ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[File]
operation=copyonly
mode=overwrite
source=%setup%
destination=%installDir%\uninstall\Setup.exe
sequence=100

[Folder]
operation=copy
mode=overwrite
source=%source%\lang
destination=%installDir%\uninstall
sequence=105

[File]
operation=copy
mode=overwrite
source=%source%\x64\Drv64.exe
destination=%installDir%\uninstall\x64\Drv64.exe
condition=Is64
sequence=110
usequence=11000

[File]
operation=copyonly
mode=ifnewer
source=%source%\difxapi.dll
destination=%system%\difxapi.dll
error=ignore
condition=NOT Is64
sequence=115

[File]
operation=copyonly
mode=ifnewer
source=%source%\x64\difxapi.dll
destination=%system64%\difxapi.dll
condition=Is64
error=ignore
sequence=115

[Uninstall]
name={F0E3AD40-2BBD-4360-9C76-B9AC9A5886EA}
display=%product%
display_mui=@%installDir%\Uninstall\Setup.exe,-1166
command=%installDir%\Uninstall\setup.exe -uninstall
location=%installDir%
estimatedsize=76000
publisher=Intel Corporation
icon=%installDir%\Uninstall\Setup.exe,0
modify=no
repair=no
version=%GFXVer%
sequence=120
group=ARP

[Folder]
operation=deleteoninstall
destination=%ProgFilesDir%\Intel\Intel(R) Graphics Media Accelerator Driver
delete_if_not_empty=yes
sequence=12100
group=GFX

; Remove legacy uninstall key 32bit
[Registry]
operation=deleteoninstall
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\HDMI
delete_if_not_empty=YES
condition=NOT Is64
sequence=121
group=GFX

; Remove legacy uninstall key 64bit
[Registry]
operation=deleteoninstall
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\HDMI
delete_if_not_empty=YES
condition=Is64
sequence=121
group=GFX

; Remove legacy product key 32bit
[Registry]
operation=deleteoninstall
root=HKLM
path=SOFTWARE\Intel\IGDI
delete_if_not_empty=YES
sequence=122
group=GFX


;;;;;;;;;;;;;;;;;;;;;;;;
; GFX

[inf]
name=GFX
removedevice=yes
sequence=-5
usequence=1
group=GFX

[Registry]
operation=create
root=HKLM
path=System\CurrentControlSet\Control\Windows
value=SystemDirectory
data=%system%
type=sz
sequence=100
group=GFX

[Registry]
operation=create
root=HKLM
path=System\CurrentControlSet\Services\ialm\Device0
value=SystemDirectory
data=%system%
type=sz
sequence=100
group=GFX

[Registry]
operation=create
root=HKLM
path=System\CurrentControlSet\Services\ialm\Device1
value=SystemDirectory
data=%system%
type=sz
sequence=100
group=GFX

[Registry]
operation=createonly
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
value=WinSat
data=winsat dwm -xml results.xml
type=sz
condition=IsOS(VISTA,MAXOS) AND NOT IsCmd(nowinsat) AND IfDrvExists(GFX) AND NOT Is64
sequence=100
group=GFX

[Registry]
operation=createonly
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
value=WinSat
data=winsat dwm -xml results.xml
type=sz
condition=IsOS(VISTA,MAXOS) AND NOT IsCmd(nowinsat) AND IfDrvExists(GFX) AND Is64
sequence=100
group=GFX


;;;;;;;;;;;;;;;;;;;;;;;;
; HDMI

[File]
operation=copy
source=%source%\Media\Media.cab
destination=%windir%\Media
decompress=yes
error=ignore
sequence=-4
usequence=1002
group=MEDIA

[inf]
name=HDMI
sequence=-3
usequence=10001
group=HDMI


;;;;;;;;;;;;;;;;;;;;;;;;
; IIPS

[inf]
name=IIPS
sequence=-1
usequence=10000
group=IIPS


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Begin Media SDK                                                     ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;
; Media SDK 2.0 x86 ;;
;;;;;;;;;;;;;;;;;;;;;;

; Copy all files on Win8+
[Folder]
operation=copy
mode=overwrite
source=%MSDKSRC%
destination=%MSDKDEST20%
sequence=200
usequence=310
condition=IsOS(WIN8,MAXOS)
group=MSDK20

; On Vista/Win 7, copy main DLL only
[File]
operation=copy
mode=overwrite
source=%MSDKSRC%\libmfxhw32-s1.dll
destination=%MSDKDEST20%\libmfxhw32-s1.dll
error=ignore
sequence=200
usequence=310
condition=IsOS(VISTA,VISTA_MAXSP) OR IsOS(WIN7,WIN7_MAXSP)
group=MSDK20

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-s1-1
value=DeviceID
data=x%GFX_HWID%
type=dw
sequence=260
usequence=250
group=MSDK20

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-s1-1
value=VendorID
data=x8086
type=dw
sequence=265
usequence=245
group=MSDK20

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-s1-1
value=Merit
data=x%MSDK_MERIT%
type=dw
sequence=270
usequence=240
group=MSDK20

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-s1-1
value=APIVersion
data=x%MSDK_APIVERSION%
type=dw
sequence=275
usequence=235
group=MSDK20

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-s1-1
value=Path
data=%MSDKDEST20%\libmfxhw32-s1.dll
type=sz
sequence=280
usequence=230
group=MSDK20

[Registry]
operation=createonly
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableEncoders
data=x1
type=dw
condition=IsOS(WIN7,MAXOS)
sequence=285
usequence=225
group=MSDK20

[Registry]
operation=createonly
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableDecoders
data=x1
type=dw
condition=IsOS(WIN7,MAXOS)
sequence=285
usequence=225
group=MSDK20

[Registry]
operation=createonly
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableVideoProcessors
data=x1
type=dw
condition=IsOS(WIN7,MAXOS)
sequence=290
usequence=220
group=MSDK20

[RegisterCOM]
operation=reg
bin=%MSDKDEST20%\mfx_mft_h264ve_32.dll
condition=IsOS(WIN8,MAXOS)
sequence=297
usequence=213
group=MSDK20


; Cleanup 1.5 in case it was previously installed
[Folder]
operation=deleteoninstall
destination=%MSDKDEST15%
delete_if_not_empty=yes
sequence=315
group=MSDK20

[Folder]
operation=deleteoninstall
destination=%commonappsdir%\Intel\Media SDK\i1
delete_if_not_empty=no
sequence=320
group=MSDK20

[Registry]
operation=deleteoninstall
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-i1-1
delete_if_not_empty=yes
sequence=325
group=MSDK20


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Media SDK 2.0 x86 Uninstall ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Folder]
operation=deleteonuninstall
destination=%commonappsdir%\Intel\Media SDK\s1
delete_if_not_empty=no
usequence=325
group=MSDK20

[Folder]
operation=deleteonuninstall
destination=%commonappsdir%\Intel\Media SDK
delete_if_not_empty=no
usequence=330
group=MSDK20

[Folder]
operation=deleteonuninstall
destination=%commonappsdir%\Intel
delete_if_not_empty=no
usequence=335
group=MSDK20

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-s1-1
delete_if_not_empty=no
usequence=340
group=MSDK20

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch
delete_if_not_empty=no
usequence=345
group=MSDK20

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel\MediaSDK
delete_if_not_empty=no
usequence=350
group=MSDK20

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel
delete_if_not_empty=no
usequence=355
group=MSDK20


;;;;;;;;;;;;;;;;;;;;;;
; Media SDK 2.0 x64 ;;
;;;;;;;;;;;;;;;;;;;;;;

; Copy all files on Win8+
[Folder]
operation=copy
mode=overwrite
source=%MSDKSRC64%
destination=%MSDKDEST2064%
sequence=400
usequence=510
condition=Is64 AND IsOS(WIN8,MAXOS)
group=MSDK20

; On Win 7, copy main DLL only
; Note: This action item is duplicated for Vista because the 'condition'
;  logic of 'Is64 AND IsOS(VISTA,VISTA_MAXSP) OR IsOS(WIN7,WIN7_MAXSP)'
;  would not evaluate correctly.
[File]
operation=copy
mode=overwrite
source=%MSDKSRC64%\libmfxhw64-s1.dll
destination=%MSDKDEST2064%\libmfxhw64-s1.dll
error=ignore
sequence=400
usequence=510
condition=Is64 AND IsOS(WIN7,WIN7_MAXSP)
group=MSDK20

; On Vista, copy main DLL only
[File]
operation=copy
mode=overwrite
source=%MSDKSRC64%\libmfxhw64-s1.dll
destination=%MSDKDEST2064%\libmfxhw64-s1.dll
error=ignore
sequence=400
usequence=510
condition=Is64 AND IsOS(VISTA,VISTA_MAXSP)
group=MSDK20

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-s1-1
value=DeviceID
data=x%GFX_HWID%
type=dw
condition=Is64
sequence=405
usequence=405
group=MSDK20

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-s1-1
value=VendorID
data=x8086
type=dw
condition=Is64
sequence=410
usequence=410
group=MSDK20

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-s1-1
value=Merit
data=x%MSDK_MERIT%
type=dw
condition=Is64
sequence=415
usequence=415
group=MSDK20

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-s1-1
value=APIVersion
data=x%MSDK_APIVERSION%
type=dw
condition=Is64
sequence=420
usequence=420
group=MSDK20

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-s1-1
value=Path
data=%MSDKDEST2064%\libmfxhw64-s1.dll
type=sz
condition=Is64
sequence=425
usequence=425
group=MSDK20

[Registry]
operation=createonly
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableEncoders
data=x1
type=dw
condition=Is64 AND IsOS(WIN7,MAXOS)
sequence=485
usequence=425
group=MSDK20

[Registry]
operation=createonly
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableDecoders
data=x1
type=dw
condition=Is64 AND IsOS(WIN7,MAXOS)
sequence=485
usequence=425
group=MSDK20

[Registry]
operation=createonly
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableVideoProcessors
data=x1
type=dw
condition=Is64 AND IsOS(WIN7,MAXOS)
sequence=490
usequence=420
group=MSDK20

[Process]
operation=runonly
bin=%system64%\regsvr32.exe
commandline=/s "%MSDKDEST2064%\mfx_mft_h264ve_64.dll"
wait=yes
condition=Is64 AND IsOS(WIN8,MAXOS)
sequence=495
group=MSDK20


; Cleanup 1.5 in case it was previously installed
[Folder]
operation=deleteoninstall
destination=%MSDKDEST1564%
delete_if_not_empty=yes
condition=Is64
sequence=515
group=MSDK20

[Folder]
operation=deleteoninstall
destination=%commonappsdir64%\Intel\Media SDK\i1
delete_if_not_empty=no
condition=Is64
sequence=520
group=MSDK20

[Registry]
operation=deleteoninstall
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-i1-1
delete_if_not_empty=yes
condition=Is64
sequence=525
group=MSDK20


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Media SDK 2.0 x64 Uninstall ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Process]
operation=runonuninstall
bin=%system64%\regsvr32.exe
commandline=/s /u "%MSDKDEST2064%\mfx_mft_h264ve_64.dll"
wait=yes
condition=Is64 AND IsOS(WIN8,MAXOS)
usequence=455
group=MSDK20

[Folder]
operation=deleteonuninstall
destination=%commonappsdir64%\Intel\Media SDK\s1
delete_if_not_empty=no
condition=Is64
usequence=515
group=MSDK20

[Folder]
operation=deleteonuninstall
destination=%commonappsdir64%\Intel\Media SDK
delete_if_not_empty=no
condition=Is64
usequence=520
group=MSDK20

[Folder]
operation=deleteonuninstall
destination=%commonappsdir64%\Intel
delete_if_not_empty=no
condition=Is64
usequence=525
group=MSDK20

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-s1-1
delete_if_not_empty=no
condition=Is64
usequence=530
group=MSDK20

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch
delete_if_not_empty=no
condition=Is64
usequence=535
group=MSDK20

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK
delete_if_not_empty=no
condition=Is64
usequence=540
group=MSDK20

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Intel
delete_if_not_empty=no
condition=Is64
usequence=545
group=MSDK20


;;;;;;;;;;;;;;;;;;;;;;
; Media SDK 3.0 x86 ;;
;;;;;;;;;;;;;;;;;;;;;;

; Copy all files on Win8+
[Folder]
operation=copy
mode=overwrite
source=%MSDKSRC%
destination=%MSDKDEST30%
sequence=200
usequence=310
condition=IsOS(WIN8,MAXOS)
group=MSDK30

; On Vista/Win 7, copy main DLL only
[File]
operation=copy
mode=overwrite
source=%MSDKSRC%\libmfxhw32-i2.dll
destination=%MSDKDEST30%\libmfxhw32-i2.dll
error=ignore
sequence=200
usequence=310
condition=IsOS(VISTA,VISTA_MAXSP) OR IsOS(WIN7,WIN7_MAXSP)
group=MSDK30

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-i2-1
value=DeviceID
data=x%GFX_HWID%
type=dw
sequence=260
usequence=250
group=MSDK30

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-i2-1
value=VendorID
data=x8086
type=dw
sequence=265
usequence=245
group=MSDK30

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-i2-1
value=Merit
data=x%MSDK_MERIT%
type=dw
sequence=270
usequence=240
group=MSDK30

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-i2-1
value=APIVersion
data=x%MSDK_APIVERSION%
type=dw
sequence=275
usequence=235
group=MSDK30

[Registry]
operation=create
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-i2-1
value=Path
data=%MSDKDEST30%\libmfxhw32-i2.dll
type=sz
sequence=280
usequence=230
group=MSDK30

[Registry]
operation=createonly
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableEncoders
data=x1
type=dw
condition=IsOS(WIN7,MAXOS)
sequence=285
usequence=225
group=MSDK30

[Registry]
operation=createonly
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableDecoders
data=x1
type=dw
condition=IsOS(WIN7,MAXOS)
sequence=285
usequence=225
group=MSDK30

[Registry]
operation=createonly
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableVideoProcessors
data=x1
type=dw
condition=IsOS(WIN7,MAXOS)
sequence=290
usequence=220
group=MSDK30

[RegisterCOM]
operation=reg
bin=%MSDKDEST30%\mfx_mft_h264ve_32.dll
condition=IsOS(WIN8,MAXOS)
sequence=297
usequence=213
group=MSDK30

; Cleanup 2.0 in case it was previously installed
[Folder]
operation=deleteoninstall
destination=%MSDKDEST20%
delete_if_not_empty=yes
sequence=315
group=MSDK30

[Folder]
operation=deleteoninstall
destination=%commonappsdir%\Intel\Media SDK\s1
delete_if_not_empty=no
sequence=320
group=MSDK30

[Registry]
operation=deleteoninstall
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-s1-1
delete_if_not_empty=yes
sequence=325
group=MSDK30


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Media SDK 3.0 x86 Uninstall ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Folder]
operation=deleteonuninstall
destination=%commonappsdir%\Intel\Media SDK\i2
delete_if_not_empty=no
usequence=325
group=MSDK30

[Folder]
operation=deleteonuninstall
destination=%commonappsdir%\Intel\Media SDK
delete_if_not_empty=no
usequence=330
group=MSDK30

[Folder]
operation=deleteonuninstall
destination=%commonappsdir%\Intel
delete_if_not_empty=no
usequence=335
group=MSDK30

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw32-i2-1
delete_if_not_empty=no
usequence=340
group=MSDK30

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch
delete_if_not_empty=no
usequence=345
group=MSDK30

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel\MediaSDK
delete_if_not_empty=no
usequence=350
group=MSDK30

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel
delete_if_not_empty=no
usequence=355
group=MSDK30


;;;;;;;;;;;;;;;;;;;;;;
; Media SDK 3.0 x64 ;;
;;;;;;;;;;;;;;;;;;;;;;

; Copy all files on Win8+
[Folder]
operation=copy
mode=overwrite
source=%MSDKSRC64%
destination=%MSDKDEST3064%
sequence=400
usequence=510
condition=Is64 AND IsOS(WIN8,MAXOS)
group=MSDK30

; On Win 7, copy main DLL only
; Note: This action item is duplicated for Vista because the 'condition'
;  logic of 'Is64 AND IsOS(VISTA,VISTA_MAXSP) OR IsOS(WIN7,WIN7_MAXSP)'
;  would not evaluate correctly.
[File]
operation=copy
mode=overwrite
source=%MSDKSRC64%\libmfxhw64-i2.dll
destination=%MSDKDEST3064%\libmfxhw64-i2.dll
error=ignore
sequence=400
usequence=510
condition=Is64 AND IsOS(WIN7,WIN7_MAXSP)
group=MSDK30

; On Vista, copy main DLL only
[File]
operation=copy
mode=overwrite
source=%MSDKSRC64%\libmfxhw64-i2.dll
destination=%MSDKDEST3064%\libmfxhw64-i2.dll
error=ignore
sequence=400
usequence=510
condition=Is64 AND IsOS(VISTA,VISTA_MAXSP)
group=MSDK30

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-i2-1
value=DeviceID
data=x%GFX_HWID%
type=dw
condition=Is64
sequence=405
usequence=405
group=MSDK30

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-i2-1
value=VendorID
data=x8086
type=dw
condition=Is64
sequence=410
usequence=410
group=MSDK30

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-i2-1
value=Merit
data=x%MSDK_MERIT%
type=dw
condition=Is64
sequence=415
usequence=415
group=MSDK30

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-i2-1
value=APIVersion
data=x%MSDK_APIVERSION%
type=dw
condition=Is64
sequence=420
usequence=420
group=MSDK30

[Registry]
operation=create
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-i2-1
value=Path
data=%MSDKDEST3064%\libmfxhw64-i2.dll
type=sz
condition=Is64
sequence=425
usequence=425
group=MSDK30

[Registry]
operation=createonly
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableEncoders
data=x1
type=dw
condition=Is64 AND IsOS(WIN7,MAXOS)
sequence=485
usequence=425
group=MSDK30

[Registry]
operation=createonly
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableDecoders
data=x1
type=dw
condition=Is64 AND IsOS(WIN7,MAXOS)
sequence=485
usequence=425
group=MSDK30

[Registry]
operation=createonly
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows Media Foundation\HardwareMFT
value=EnableVideoProcessors
data=x1
type=dw
condition=Is64 AND IsOS(WIN7,MAXOS)
sequence=490
usequence=420
group=MSDK30


[Process]
operation=runonly
bin=%system64%\regsvr32.exe
commandline=/s "%MSDKDEST3064%\mfx_mft_h264ve_64.dll"
wait=yes
condition=Is64 AND IsOS(WIN8,MAXOS)
sequence=495
group=MSDK30

; Cleanup 2.0 in case it was previously installed
[Folder]
operation=deleteoninstall
destination=%MSDKDEST2064%
delete_if_not_empty=yes
condition=Is64
sequence=515
group=MSDK30

[Folder]
operation=deleteoninstall
destination=%commonappsdir64%\Intel\Media SDK\s1
delete_if_not_empty=no
condition=Is64
sequence=520
group=MSDK30

[Registry]
operation=deleteoninstall
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-s1-1
delete_if_not_empty=yes
condition=Is64
sequence=525
group=MSDK30


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Media SDK 3.0 x64 Uninstall ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Process]
operation=runonuninstall
bin=%system64%\regsvr32.exe
commandline=/s /u "%MSDKDEST3064%\mfx_mft_h264ve_64.dll"
wait=yes
condition=Is64 AND IsOS(WIN8,MAXOS)
usequence=455
group=MSDK30

[Folder]
operation=deleteonuninstall
destination=%commonappsdir64%\Intel\Media SDK\i2
delete_if_not_empty=no
condition=Is64
usequence=515
group=MSDK30

[Folder]
operation=deleteonuninstall
destination=%commonappsdir64%\Intel\Media SDK
delete_if_not_empty=no
condition=Is64
usequence=520
group=MSDK30

[Folder]
operation=deleteonuninstall
destination=%commonappsdir64%\Intel
delete_if_not_empty=no
condition=Is64
usequence=525
group=MSDK30

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch\hw64-i2-1
delete_if_not_empty=no
condition=Is64
usequence=530
group=MSDK30

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK\Dispatch
delete_if_not_empty=no
condition=Is64
usequence=535
group=MSDK30

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Intel\MediaSDK
delete_if_not_empty=no
condition=Is64
usequence=540
group=MSDK30

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Intel
delete_if_not_empty=no
condition=Is64
usequence=545
group=MSDK30


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; End Media SDK                                                       ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;
; ICCS   ;
;;;;;;;;;;

[Process]
operation=runonly
bin=%source%\ICCS\SetupICCS.exe
commandline=/s /g %LangId% /report %_logpath%
wait=yes
hide=yes
sequence=1061
group=ICCS

[Process]
operation=runonuninstall
bin=%ProgFilesDir%\Intel\Intel(R) Integrated Clock Controller Service\Uninstall\Setup.exe
commandline=/s /uninstall /report %_logpath%
wait=yes
hide=yes
error=ignore
usequence=471
group=ICCS

;;;;;;;;;;
; OpenCL ;
;;;;;;;;;;

[Process]
operation=runonly
bin=%source%\OpenCL\OCLSetup.exe
commandline=/s /g %LangId% /report %_logpath%
wait=yes
hide=yes
sequence=1060
group=CPUOCL

;Uninstall registry values placed by INF during installation. Do not delete key!
[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Khronos\OpenCL\Vendors
value=igdrcl32.dll
usequence=1000
group=GFXOCL

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Khronos\OpenCL\Vendors
value=igdrcl64.dll
condition=Is64
usequence=1010
group=GFXOCL

[Process]
operation=runonuninstall
bin=%ProgFilesDir%\Intel\OpenCL SDK\2.0\Uninstall\Setup.exe
commandline=/s /uninstall /report %_logpath%
wait=yes
hide=yes
error=ignore
usequence=470
group=CPUOCL


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;        Update Manager        ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[File]
operation=copy
mode=overwrite
source=%source%\Update Manager\IntelUpdateManager.msi
destination=%installDir%\Update Manager\IntelUpdateManager.msi
sequence=6003
GROUP=FUA

[File]
operation=copy
mode=overwrite
source=%source%\Update Manager\35aa811b-d0b6-4ce5-8e6a-959a1e5cfdb2.xml
destination=%progdata%\Intel\Intel(R) Update Manager\updateinfo\38f254b6-9d69-4798-99d1-a2af95046fe3\35aa811b-d0b6-4ce5-8e6a-959a1e5cfdb2.xml
error=ignore
sequence=6000


[File]
operation=copy
mode=overwrite
source=%source%\Update Manager\38f254b6-9d69-4798-99d1-a2af95046fe3.xml
destination=%progdata%\Intel\Intel(R) Update Manager\device_profile\templates\38f254b6-9d69-4798-99d1-a2af95046fe3.xml
error=ignore
sequence=6000


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;   CLV Shortcuts 				;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Shortcut]
target=%system%\IntelInvokePanel.exe
path=%startmenu%\Intel (R) Graphics and Media Control Panel.lnk
commandline=Metro
sequence=6050
usequence=25000
error=ignore
group=SHORTCUTS

[Shortcut]
target=%system%\IntelInvokePanel.exe
path=%commondesktop%\Intel (R) Graphics and Media Control Panel.lnk
commandline=Desktop
sequence=6051
usequence=25001
error=ignore
group=SHORTCUTS


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; These actions run on uninstall ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Process]
operation=stoponuninstall
bin=GfxUI.exe
usequence=-13
group=GFX

[Process]
operation=stoponuninstall
bin=igfxtray.exe
usequence=-12
group=GFX

[Process]
operation=stoponuninstall
bin=igfxsrvc.exe
usequence=-11
group=GFX

[Process]
operation=stoponuninstall
bin=hkcmd.exe
usequence=-10
group=GFX

[Process]
operation=stoponuninstall
bin=igfxpers.exe
usequence=-9
group=GFX

[Process]
operation=stoponuninstall
bin=igfxext.exe
usequence=-8
group=GFX

[File]
operation=deleteonuninstall
destination=%windir%\system32\igfxsrvc.exe
sequence=2
group=GFX

[File]
operation=deleteonuninstall
destination=%windir%\System32\igfxtray.exe
group=GFX
usequence=2

[File]
operation=deleteonuninstall
destination=%system%\igdbcl32.dll
usequence=3
error=ignore
group=GFX

[File]
operation=deleteonuninstall
destination=%system%\igdfcl32.dll
usequence=4
error=ignore
group=GFX

[File]
operation=deleteonuninstall
destination=%system%\igdrcl32.dll
usequence=5
error=ignore
group=GFX

[File]
operation=deleteonuninstall
destination=%systemcuros%\igdbcl64.dll
condition=Is64
usequence=6
error=ignore
group=GFX

[File]
operation=deleteonuninstall
destination=%systemcuros%\igdfcl64.dll
condition=Is64
usequence=7
error=ignore
group=GFX

[File]
operation=deleteonuninstall
destination=%systemcuros%\igdrcl64.dll
condition=Is64
usequence=8
error=ignore
group=GFX

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel\Display
delete_if_not_empty=YES
usequence=12000
group=GFX

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\Run
value=HotKeysCmds
condition=NOT Is64
group=GFX

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\Run
value=IgfxTray
condition=NOT Is64
group=GFX

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\Run
value=Persistence
condition=NOT Is64
group=GFX

[Registry]
operation=deleteonuninstall
root=HKLM
path=System\CurrentControlSet\Services\ialm\Device0
delete_if_not_empty=YES
usequence=100
group=GFX

[Registry]
operation=deleteonuninstall
root=HKLM
path=System\CurrentControlSet\Services\ialm\Device1
delete_if_not_empty=YES
usequence=100
group=GFX

[Registry]
operation=deleteonuninstall
root=HKLM
path=SOFTWARE\Intel\ICC\Applications\Graphics
usequence=100
group=GFX

[registry]
operation=deleteonuninstall
root=HKCU
path=SOFTWARE\Intel\ICC\Applications\Intel Graphics Driver
delete_if_not_empty=YES
condition=NOT Is64
usequence=100
group=GFX


;; 64 bit uninstall stuff

[Folder]
operation=deleteonuninstall
destination=%installDir%\uninstall\x64
delete_if_not_empty=yes
condition=Is64
usequence=11010

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\Run
value=HotKeysCmds
condition=Is64
group=GFX

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\Run
value=IgfxTray
condition=Is64
group=GFX

[Registry]
operation=deleteonuninstall
hive=64
root=HKLM
path=SOFTWARE\Microsoft\Windows\CurrentVersion\Run
value=Persistence
condition=Is64
group=GFX

[registry]
operation=deleteonuninstall
hive=64
root=HKCU
path=SOFTWARE\Intel\ICC\Applications\Intel Graphics Driver
delete_if_not_empty=YES
condition=Is64
usequence=100
group=GFX

[Registry]
operation=deleteonuninstall
root=HKLM
hive=64
path=SOFTWARE\Intel\Display
delete_if_not_empty=YES
condition=Is64
usequence=12000
group=GFX

; CPHS removal
[Service]
operation=stoponuninstall
name=CPHS
usequence=20040
error=ignore

[Service]
operation=removeonuninstall
name=CPHS
usequence=20060
error=ignore

[File]
operation=deleteonuninstall
destination=%windir%\system32\IntelCpHeciSvc.exe
usequence=20080
error=ignore

[File]
operation=deleteonuninstall
destination=%windir%\system32\iglhcp32.dll
usequence=20100
error=ignore
