<?xml version="1.0" encoding="UTF-8"?>
<SapSetup Context="Variables" Version="3">
    <Variable Name="SapSetupDir">
      <Value>%ProgramFiles%\SAP\SAPsetup</Value>
    </Variable>
    <Variable Name="CabFilesSrcDir" Persistent="FALSE">
      <Value>%SapSrcDir%\CAB</Value>
    </Variable>
    <Variable Name="WinWordExist" Persistent="FALSE">
      <Value>NO</Value>
      <Value Script="TRUE">
		<![CDATA[
			NWEngine.Context.Log.Write "Script: Checking for WinWord..."
			If NWEngine.Shell.RegKeyExist("HKCR\Word.Document.8\shell\open\command") Then
				NWEngine.Variables.AppendDefaultValue "WinWordExist", "YES"
			End If
			NWEngine.Variables.Persistent( "WinWordExist" ) = vbFalse
		]]>
      </Value>
    </Variable>
    <Variable Name="CommonStartUpGroup" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			szBuffer  = ""
			szRegKey  = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
			szRegName = szRegKey & "\Common Startup"
			If NwEngine.Shell.RegKeyExist( szRegKey ) Then
				szPath = NwEngine.Shell.GetRegValue( szRegName )
				NwEngine.Context.Log.Write "Startup folder = " & Chr(34) & szPath & Chr(34)
				iPos = InstrRev( szPath, "\" )
				szBuffer = mid( szPath, iPos + 1 )
			End if
			NWEngine.Variables.AppendDefaultValue "CommonStartUpGroup", szBuffer
		]]>
      </Value>
    </Variable>
    <Variable Name="JdkHome" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
		IsJdkMissing()
		
		Function IsJdkMissing()
			IsJdkMissing = vbFalse ' default
			bJdkExists = vbFalse
			strJdkHome = ""
			strJavaExe = ""
			NWEngine.Context.Log.Write "Variables-Script: Checking for JDK HOME"
			If bSearchForJavaMinorVersion( "1.5.0" ) Then
				bJdkExists = vbTrue
			ElseIf bSearchForJavaHome( "1.5", "" ) Then
				bJdkExists = vbTrue
			ElseIf bSearchForJavaMinorVersion( "1.4.2" ) Then
				bJdkExists = vbTrue
			ElseIf bSearchForJavaMinorVersion( "1.4.1" ) Then
				bJdkExists = vbTrue
			ElseIf bSearchForJavaHome( "1.4", "" ) Then
				bJdkExists = vbTrue
			ElseIf bSearchForJavaMinorVersion( "1.3.1" ) Then
				bJdkExists = vbTrue
			ElseIf bSearchForJavaHome( "1.3", "" ) Then
				bJdkExists = vbTrue
			Else
				bJdkExists = vbFalse
			End If
			If Not bJdkExists Then
				NWEngine.Context.Log.WriteWarning "Variables-Script: JDK could not be detected!"
				IsJdkMissing = vbTrue
			End If
		End Function

		Function bSearchForJavaMinorVersion( szMajorVersion )
			bSearchForJavaMinorVersion = vbFalse
			iMinorVersion = 19
			Do While iMinorVersion > 0
				szMinorVersion = "0" & iMinorVersion
				If bSearchForJavaHome( szMajorVersion, szMinorVersion ) Then
					bSearchForJavaMinorVersion = vbTrue
					Exit Function
				Else
					iMinorVersion = iMinorVersion - 1
				End If
			Loop
			If bSearchForJavaHome( szMajorVersion, "" ) Then
				bSearchForJavaMinorVersion = vbTrue
			End If
		End Function

		Function bSearchForJavaHome( szMajorVersion, szMinorVersion )
			bSearchForJavaHome = vbFalse
			If szMajorVersion = "1.3" Then
				strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Development Kit\1.3"
			ElseIf szMajorVersion = "1.4" Then
				strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Development Kit\1.4"
			ElseIf szMajorVersion = "1.5" Then
				strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Development Kit\1.5"
			Else
				If szMinorVersion = "" Then
					strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Development Kit\" & szMajorVersion
				Else
					strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Development Kit\" & szMajorVersion & "_" & szMinorVersion
				End If
			End If
			strJavaHomeEntry = strVersionKey & "\JavaHome"
			If NWEngine.Shell.RegKeyExist( strVersionKey ) Then
				strJdkHome = NWEngine.Shell.GetRegValue( strJavaHomeEntry )
				If strJdkHome <> "" Then
					strJavaExe = strJdkHome & "\bin\java.exe"
					NWEngine.Context.Log.Write "Scriptlet : Searching for " & strJavaExe & " ..."
					If NWEngine.Shell.FileExist( strJavaExe ) Then
						NWEngine.Context.Log.Write "Scriptlet : Java Development Kit detected."
						bSearchForJavaHome = vbTrue
						NWEngine.Variables.AppendDefaultValue "JdkHome", strJdkHome
					End If
				End If
			End If
		End Function
		]]>
      </Value>
    </Variable>
    <Variable Name="JreHome" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
		IsJreMissing()
		
		Function IsJreMissing()
			IsJreMissing = vbFalse ' default
			bJreExists = vbFalse
			strJreHome = ""
			strJavaExe = ""
			NWEngine.Context.Log.Write "Variables-Script: Checking for Jre HOME"
			If bSearchForJavaMinorVersion( "1.5.0" ) Then
				bJreExists = vbTrue
			ElseIf bSearchForJavaHome( "1.5", "" ) Then
				bJreExists = vbTrue
			ElseIf bSearchForJavaMinorVersion( "1.4.2" ) Then
				bJreExists = vbTrue
			ElseIf bSearchForJavaMinorVersion( "1.4.1" ) Then
				bJreExists = vbTrue
			ElseIf bSearchForJavaHome( "1.4", "" ) Then
				bJreExists = vbTrue
			ElseIf bSearchForJavaMinorVersion( "1.3.1" ) Then
				bJreExists = vbTrue
			ElseIf bSearchForJavaHome( "1.3", "" ) Then
				bJreExists = vbTrue
			Else
				bJreExists = vbFalse
			End If
			If Not bJreExists Then
				NWEngine.Context.Log.WriteWarning "Variables-Script: JRE could not be detected!"
				IsJreMissing = vbTrue
			End If
		End Function

		Function bSearchForJavaMinorVersion( szMajorVersion )
			bSearchForJavaMinorVersion = vbFalse
			iMinorVersion = 19
			Do While iMinorVersion > 0
				szMinorVersion = "0" & iMinorVersion
				If bSearchForJavaHome( szMajorVersion, szMinorVersion ) Then
					bSearchForJavaMinorVersion = vbTrue
					Exit Function
				Else
					iMinorVersion = iMinorVersion - 1
				End If
			Loop
			If bSearchForJavaHome( szMajorVersion, "" ) Then
				bSearchForJavaMinorVersion = vbTrue
			End If
		End Function

		Function bSearchForJavaHome( szMajorVersion, szMinorVersion )
			bSearchForJavaHome = vbFalse
			If szMajorVersion = "1.3" Then
				strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\1.3"
			ElseIf szMajorVersion = "1.4" Then
				strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\1.4"
			ElseIf szMajorVersion = "1.5" Then
				strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\1.5"
			Else
				If szMinorVersion = "" Then
					strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\" & szMajorVersion
				Else
					strVersionKey = "HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\" & szMajorVersion & "_" & szMinorVersion
				End If
			End If
			strJavaHomeEntry = strVersionKey & "\JavaHome"
			If NWEngine.Shell.RegKeyExist( strVersionKey ) Then
				strJreHome = NWEngine.Shell.GetRegValue( strJavaHomeEntry )
				If strJreHome <> "" Then
					strJavaExe = strJreHome & "\bin\java.exe"
					NWEngine.Context.Log.Write "Scriptlet : Searching for " & strJavaExe & " ..."
					If NWEngine.Shell.FileExist( strJavaExe ) Then
						NWEngine.Context.Log.Write "Scriptlet : Java Runtime Environment detected."
						bSearchForJavaHome = vbTrue
						NWEngine.Variables.AppendDefaultValue "JreHome", strJreHome
					End If
				End If
			End If
		End Function
		]]>
      </Value>
    </Variable>
    <Variable Name="AcroReader6Dir" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NWEngine.Context.Log.Write "Script: Checking for Adobe Acrobat Reader 6.0"
			szAcroReader6Dir = ""
			If NWEngine.Shell.RegKeyExist("HKLM\SOFTWARE\Adobe\Acrobat Reader\6.0\InstallPath") Then
				szAcroReader6Dir = NWEngine.Shell.GetRegValue( "HKLM\SOFTWARE\Adobe\Acrobat Reader\6.0\InstallPath\" )
		      	NwEngine.Variables.AppendDefaultValue "AcroReader6Dir", szAcroReader6Dir
			End If
		]]>
      </Value>
    </Variable>
    <Variable Name="Acro6Dir" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NWEngine.Context.Log.Write "Script: Checking for Adobe Acrobat 6.0"
			szAcro6Dir = ""
			If NWEngine.Shell.RegKeyExist( "HKLM\SOFTWARE\Adobe\Adobe Acrobat\6.0\InstallPath" ) Then
				szAcro6Dir = NWEngine.Shell.GetRegValue( "HKLM\SOFTWARE\Adobe\Adobe Acrobat\6.0\InstallPath\" )
		      	NwEngine.Variables.AppendDefaultValue "Acro6Dir", szAcro6Dir
			End If
		]]>
      </Value>
    </Variable>
    <Variable Name="AcroReader7Dir" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NWEngine.Context.Log.Write "Script: Checking for Adobe Acrobat Reader 7.0"
			szAcroReader7Dir = ""
			If NWEngine.Shell.RegKeyExist("HKLM\SOFTWARE\Adobe\Acrobat Reader\7.0\InstallPath") Then
				szAcroReader7Dir = NWEngine.Shell.GetRegValue( "HKLM\SOFTWARE\Adobe\Acrobat Reader\7.0\InstallPath\" )
		      	NwEngine.Variables.AppendDefaultValue "AcroReader7Dir", szAcroReader7Dir
			End If
		]]>
      </Value>
    </Variable>
    <Variable Name="Acro7Dir" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NWEngine.Context.Log.Write "Script: Checking for Adobe Acrobat 7.0"
			szAcro7Dir = ""
			If NWEngine.Shell.RegKeyExist( "HKLM\SOFTWARE\Adobe\Adobe Acrobat\7.0\InstallPath" ) Then
				szAcro7Dir = NWEngine.Shell.GetRegValue( "HKLM\SOFTWARE\Adobe\Adobe Acrobat\7.0\InstallPath\" )
		      	NwEngine.Variables.AppendDefaultValue "Acro7Dir", szAcro7Dir
			End If
		]]>
      </Value>
    </Variable>
    <Variable Name="AcroReader8Dir" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NWEngine.Context.Log.Write "Script: Checking for Adobe Acrobat Reader 8.0"
			szAcroReader8Dir = ""
			If NWEngine.Shell.RegKeyExist("HKLM\SOFTWARE\Adobe\Acrobat Reader\8.0\InstallPath") Then
				szAcroReader8Dir = NWEngine.Shell.GetRegValue( "HKLM\SOFTWARE\Adobe\Acrobat Reader\8.0\InstallPath\" )
		      	NwEngine.Variables.AppendDefaultValue "AcroReader8Dir", szAcroReader8Dir
			End If
		]]>
      </Value>
    </Variable>
    <Variable Name="Acro8Dir" Persistent="FALSE">
      <Value>C:\UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NWEngine.Context.Log.Write "Script: Checking for Adobe Acrobat 8.0"
			szAcro8Dir = ""
			If NWEngine.Shell.RegKeyExist( "HKLM\SOFTWARE\Adobe\Adobe Acrobat\8.0\InstallPath" ) Then
				szAcro8Dir = NWEngine.Shell.GetRegValue( "HKLM\SOFTWARE\Adobe\Adobe Acrobat\8.0\InstallPath\" )
		      	NwEngine.Variables.AppendDefaultValue "Acro8Dir", szAcro8Dir
			End If
		]]>
      </Value>
    </Variable>
    <Variable Name="DotNetV114322" Persistent="FALSE">
      <Value>UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NwEngine.Context.Log.Write "Script: Checking for .NET Framework Version 1.1 (v1.1.4322)"
			szRegKeyDotNetFramework = "HKLM\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322"
			If NwEngine.Shell.RegKeyExist( szRegKeyDotNetFramework ) Then
				NwEngine.Context.Log.Write "Script: .NET Framework Version 1.1 (v1.1.4322) exists."
		      	NwEngine.Variables.AppendDefaultValue "DotNetV114322", "EXISTING"
			End If
		]]>
      </Value>
    </Variable>
    <Variable Name="DotNetV2050727" Persistent="FALSE">
      <Value>UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NwEngine.Context.Log.Write "Script: Checking for .NET Framework Version 2.0 (v2.0.50727)"
			szRegKeyDotNetFramework = "HKLM\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727"
			If NwEngine.Shell.RegKeyExist( szRegKeyDotNetFramework ) Then
				NwEngine.Context.Log.Write "Script: .NET Framework Version 2.0 (v2.0.50727) exists."
		      	NwEngine.Variables.AppendDefaultValue "DotNetV2050727", "EXISTING"
			End If
		]]>
      </Value>
    </Variable>
    <Variable Name="DotNetV30" Persistent="FALSE">
      <Value>UNDEFINED</Value>
      <Value Script="TRUE">
		<![CDATA[
			NwEngine.Context.Log.Write "Script: Checking for .NET Framework Version 3.0 (v3.0)"
			szRegKeyDotNetFramework = "HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.0"
			If NwEngine.Shell.RegKeyExist( szRegKeyDotNetFramework ) Then
				NwEngine.Context.Log.Write "Script: .NET Framework Version 3.0 (v3.0) exists."
		      	NwEngine.Variables.AppendDefaultValue "DotNetV30", "EXISTING"
			End If
		]]>
      </Value>
    </Variable>
	<Variable Name="ProxyServer" Persistent="FALSE">
		<Value>ProxyName:ProxyPort</Value>
		<Value Script="TRUE">
		<![CDATA[
			NWEngine.Context.Log.Write "Script: Checking ProxyServer"
			strRegValue_ProxyServer = NwEngine.Shell.GetRegValue( "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyServer" )
			NwEngine.Context.Log.Write "Script: Reading IE Proxy Server = " & strRegValue_ProxyServer
			If Not strRegValue_ProxyServer = "" Then
		      	NwEngine.Variables.AppendDefaultValue "ProxyServer", strRegValue_ProxyServer
			End If
		]]>
		</Value>
	</Variable>
	<Variable Name="ProxyOverride" Persistent="FALSE">
		<Value>UNDEFINED</Value>
		<Value Script="TRUE">
		<![CDATA[
			NwEngine.Context.Log.Write "Script: Checking ProxyOverride"
			strRegValue_ProxyOverride = NwEngine.Shell.GetRegValue( "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyOverride" )
			NwEngine.Context.Log.Write "Script: Reading IE Proxy Server = " & strRegValue_ProxyOverride
			If Not strRegValue_ProxyOverride = "" Then
		      	NwEngine.Variables.AppendDefaultValue "ProxyOverride", strRegValue_ProxyOverride
			End If
		]]>
		</Value>
	</Variable>
</SapSetup>
