Para o seu primeiro problema (o Java.exe está sendo executado)
Eu uso um script powershell para instalar o Java, que (entre outras coisas) fecha os grandes 3 navegadores. Vou colá-lo abaixo para referência:
function Get-ScriptDirectory{
$Invocation = (Get-Variable MyInvocation -Scope 1).Value
try {
Split-Path $Invocation.MyCommand.Path -ea 0
}
catch {
Write-Warning 'You need to call this function from within a saved script.'
}
}
function Get-Architecture{
return $(gwmi win32_operatingsystem).OSArchitecture
}
$Path = Get-ScriptDirectory
#Close all instances of IE, Firefox, & Chrome
Get-Process | where {$_.ProcessName -match "iexplore"} | Stop-Process -Force
Get-Process | where {$_.ProcessName -match "chrome"} | Stop-Process -Force
Get-Process | where {$_.ProcessName -match "firefox"} | Stop-Process -Force
#Install
Start-Process -FilePath "$Path\jre-6u41-windows-i586.exe" -ArgumentList "/s /v'"/qb REBOOT=ReallySuppress JAVAUPDATE=0 WEBSTARTICON=0 SYSTRAY=0'"" -Wait
#Also Install the 64-bit JRE if on a 64 workstation
if(Get-Architecture -match "64")
{
Start-Process -FilePath "$Path\jre-6u41-windows-x64.exe" -ArgumentList "/s /v'"/qb REBOOT=ReallySuppress JAVAUPDATE=0 WEBSTARTICON=0 SYSTRAY=0'"" -Wait
}
#Import reg keys to disable auto updating
reg import "$Path\JavaUpdate.reg"
Você também pode perceber que ele instala o java de 32 bits em todas as máquinas e instala o java de 64 bits em máquinas de 64 bits após uma verificação de 64 bits do sistema operacional.
Eu empacotei esse script com os exes Java em um sfx que descompacta e executa
powershell.exe -executionpolicy bypass -noprofile -file C:\Temp\Java\install.ps1
Para sua segunda pergunta, há duas chaves reg que o Java verifica a atualização automática:
HKLM\SOFTWARE\JavaSoft\Java Update\Policy\EnableAutoUpdateCheck
HKLM\SOFTWARE\JavaSoft\Java Update\Policy\EnableJavaUpdate
Eles ambos devem ser definidos como 0 para desabilitar a atualização automática (algumas versões do Java lêem uma chave e outras lêem outras). Eu implanto as chaves de registro com o pacote, como você pode ver no script, mas também uso o DCM do SCCM 2012s e as defino como itens de configuração, e ativo a correção para garantir que sejam sempre 0.