Thanks , works perfectly.
Here is the code

; Checks location for client
call "\\semoheat\packages\script\kix\location.kix"

; Path to MS patchar
$path="x:\install\patchar\microsoft\internet explorer\28 March 2002 Cumulative Patch for Internet Explorer\"

; REM ** Local variables in use by this function are:
Dim $RC1, $RC2, $RC3, $TmpLen1, $TmpLen2, $TmpLen3
Dim $IEBuild, $IEFullVer, $IEMajor, $IEMinor, $IESubBd, $IEVer, $IEName
$RC1 = ReadValue ("HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer", "Build") ; REM ** IE3 onward (s/b build only, or xxxxx.xxxx)
$RC2 = ReadValue ("HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer", "Version") ; REM ** IE4 or later only (s/b xx.xx.xxxx.xxxx)
$RC3 = ReadValue ("HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer", "IVer") ; REM ** IE3 only (s/b xxx)
$TmpLen1 = Len ($RC1)
$TmpLen2 = Len ($RC2)
$TmpLen3 = Len ($RC3)
Select
Case ($TmpLen1 = 10) AND (SubStr ($RC2, 4, 1) = ".") ; REM ** IE6 - MS error w/IE 6 where minor id is single charcter
$IEMajor = SubStr ($RC2, 1, 1)
$IEMinor = SubStr ($RC2, 3, 1) + "0"
$IEBuild = SubStr ($RC2, 5, 4)
$IESubBd = SubStr ($RC2, 10, $TmpLen2-9)
$IEFullVer = $IEMajor + "." + $IEMinor + "." + $IEBuild + "." + $IESubBd
Case ($TmpLen1 = 14) OR ($TmpLen2 >= 11) ; REM ** IE6/IE5/IE4 - 14 is MS error w/IE 5.01 SP1 for Win2K, >=11 for various IE5, IE4 versions not 14-character
$IEMajor = SubStr ($RC2, 1, 1)
$IEMinor = SubStr ($RC2, 3, 2)
$IEBuild = SubStr ($RC2, 6, 4)
$IESubBd = SubStr ($RC2, 11, $TmpLen2-9)
$IEFullVer = $RC2
Case ($TmpLen1 >= 3) AND ($RC3 = "103") ; REM ** IE3 - the build number only
$IEMajor = "4"
$IEMinor = "70"
$IEBuild = "$RC1"
$IESubBd = ""
$IEFullVer = $IEMajor + "." + $IEMinor + "." + $IEBuild
Case (1)
$Status = $Skip
$wri = WriteLine (1, "Verified IE not installed." + $CR)
Return
EndSelect
; REM ** Determine exact version installed on system, set shorthand value to group 'like' versions (See MS TechNet article Q164539)
Select
Case ($IEFullVer >= "6.00.2600.0000") $IEVer = "6.00" $IEName="Internet Explorer 6"
$LANG = GetFileVersion ("%PROGRAMFILES%\Internet Explorer\iexplore.exe","language")
If $LANG="041DSwedish"
Shell "$path\swe\6.0\q319182.exe /q"
goto slut
EndIf
Shell "$path\eng\6.0\q319182.exe /q"

Case ($IEFullVer >= "5.50.4807.2300") $IEVer = "5.50 SP2" $IEName="Internet Explorer 5.5 Service Pack 2"
$LANG = GetFileVersion ("%PROGRAMFILES%\Internet Explorer\iexplore.exe","language")
If $LANG="041DSwedish"
Shell "$path\swe\5.5 SP2\q319182.exe /q"
goto slut
EndIf
Shell "$path\eng\5.5 SP2\q319182.exe /q"

Case ($IEFullVer >= "5.50.4522.1800") $IEVer = "5.50 SP1" $IEName="Internet Explorer 5.5 Service Pack 1"
$LANG = GetFileVersion ("%PROGRAMFILES%\Internet Explorer\iexplore.exe","language")
If $LANG="041DSwedish"
Shell "$path\swe\5.5 SP1\q319182.exe /q"
goto slut
EndIf
Shell "$path\eng\5.5 SP1\q319182.exe /q"


Case ($IEFullVer >= "5.00.3315.1000") $IEVer = "5.01 SP2" $IEName="Internet Explorer 5.01 SP2 (Windows 2000)"
$LANG = GetFileVersion ("%PROGRAMFILES%\Internet Explorer\iexplore.exe","language")
If $LANG="041DSwedish"
Shell "$path\swe\5.01 SP2\q319182.exe /q"
goto slut
EndIf
Shell "$path\eng\5.01 SP2\q319182.exe /q"

Case ($IEFullVer >= "5.00.3314.2101") $IEVer = "5.01 SP2" $IEName="Internet Explorer 5.01 SP2 (Windows 95/98 and Windows NT 4.0)"
$LANG = GetFileVersion ("%PROGRAMFILES%\Internet Explorer\iexplore.exe","language")
If $LANG="041DSwedish"
Shell "$path\swe\5.01 SP2\q319182.exe /q"
goto slut
EndIf
Shell "$path\eng\5.01 SP2\q319182.exe /q"


EndSelect

:slut

? $IEFullVer+" "+$IEName
Sleep 5

Exit

***

Only one problem left, get the client to reboot when finished

Thanks for the quick reply

Regards

\erik